android
饼小干小蘑菇
这个作者很懒,什么都没留下…
展开
-
使用CameraX实现预览 拍照 裁切
谷歌最新发布的CameraX实现预览和拍照非常方便,本文主要介绍CameraX拍照之后取景框裁切的问题。(屏幕默认为竖屏)实现预览和拍照效果,代码非常简单xml布局<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas..原创 2021-02-23 15:32:45 · 1957 阅读 · 0 评论 -
设置paint.setXfermode(mMode)无效
在自定义View的过程中设置paint.setXfermode(mMode);达不到预期的效果解决方案:在View的构造函数中关闭硬件加速即可达到预期效果setLayerType(View.LAYER_TYPE_SOFTWARE, null);原创 2016-10-24 17:22:52 · 1037 阅读 · 0 评论 -
Android实现文字居中及各参数的意义
Paint textPaint = new Paint(Paint.ANTI_ALIAS_FLAG); textPaint.setColor(Color.WHITE); textPaint.setTextSize(60); textPaint.setStyle(Paint.Style.FILL); //该方法即原创 2016-10-26 17:26:16 · 333 阅读 · 0 评论 -
Android 同时设置多个闹钟
PendingIntent pendingIntent = PendingIntent.getBroadcast(this, id,intent, 0);Android在同时设置多个闹钟时,penddingintent第二个参数id一定要设置为不同的id,如果设置为同一个id,多个闹钟会在同一个时间执行原创 2017-04-18 15:27:49 · 5084 阅读 · 0 评论 -
关于静默安装和安装后自启动
静默安装的方法,其中packagePath为安装包的路径名实现静默安装必须获取系统root权限 String cmd = "pm install -r "+packagePath; Process process = null; DataOutputStream os = null; BufferedReader successResu...原创 2017-06-01 13:48:14 · 3000 阅读 · 1 评论 -
自定义dialog的大小和位置
Dialog dialog = new Dialog(this); // setContentView可以设置为一个View也可以简单地指定资源ID // LayoutInflater // li=(LayoutInflater)getSystemService(LAYOUT_INFLATER_SERVICE); /转载 2017-06-20 10:18:14 · 519 阅读 · 0 评论 -
SearchView 和listview 或gridview的联动筛选
SearchView 与listview自定义筛选条件的联动筛选自定义listview的adapter 并自定义筛选器复写getFilter方法public class XWDTINFOAdapter extends BaseAdapter implements Filterable {private Context context;private LayoutInflater i原创 2017-06-20 10:34:56 · 681 阅读 · 0 评论 -
怎么进入到adb shell命令
运行 cmd找到adb.exe的安装目录adb.exe的安装目录在sdk的platform-tools下如我的adb.exe的安装目录为:D:\BaiduNetdiskDownload\android sdk_4_5_6\platform-tools那么进入方法为进入目录后 输入adb shell在adb和shell之间有一个空格,之后就可以输入adb shel原创 2017-06-29 14:58:09 · 6410 阅读 · 0 评论 -
禁止弹出软键盘
在Activity的onCreate方法里调用getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);五分钟无操作关闭页面public class BaseUIActivity extends Activity {private Handler h= new原创 2017-06-08 11:17:23 · 338 阅读 · 0 评论 -
使用json解析String数组
使用json解析类似{“playnum”:["0","2","3"]}数组的方法 try {JSONObject obj = new JSONObject(s);JSONArray playary = obj.optJSONArray("playnum");String[] slist= new String[playary.length()];for (int i = 0;原创 2017-06-28 09:54:11 · 5398 阅读 · 0 评论 -
Android可以暂停录音的demo
初始状态录音状态暂停状态录音流程取消录音保存录音下载地址:https://download.csdn.net/download/lanseyuanwei2/10339618原创 2018-04-10 19:10:09 · 1039 阅读 · 2 评论 -
Android 简单的Ftp下载Demo
Android使用ftp4j包,可以实现从ftp下载文件到本地代码如下 FTPClient client = new FTPClient(); try { client.connect(HOST, 21);//其中Host为Ftp地址,端口为固定的21 // TODO client.login(user, password);//ftp的用户名,密码 ...原创 2018-04-27 15:44:08 · 927 阅读 · 0 评论 -
可以修改奇偶校验位的串口通信demo
Google提供的SerialPort API 并不支持 奇偶校验位的更改本Demo可以更改奇偶校验位,demo为eclipse版本的如果改为studio版本的需要按照下图将对应的文件放在对应的位置并在gradle中配置sourceSets { main { jni.srcDirs = [] }}ndk { //选择要添加的对应CPU类型的so abiFilters 'a...原创 2018-06-26 16:59:53 · 1359 阅读 · 1 评论 -
webview加载htmlpx和dp关系
在Android中加载webview时获取webview的高度,单位为px但是传参给html时,因为html会根据屏幕的密度进行缩放,必须转换为dp值才能使html比例正确另如果想让获取的px值与html中px值相对应,须在开头加上<meta name="viewport" content="target-densitydpi=device-dpi, width=device-width"原创 2016-06-02 17:12:58 · 2070 阅读 · 0 评论 -
实现新浪微博第三方登录获取用户信息
第一步:创建Android项目下载新浪sdk下载地址:https://github.com/sinaweibosdk/weibo_android_sdk里面包含签名工具和新浪官方的debug.keystore新浪的demo必须用官方的debug.keystore编译才能正常运行第二步:登录新浪微博开放平台http://open.weibo.com/创建应用填写应用名原创 2016-06-02 15:52:09 · 8060 阅读 · 0 评论 -
自定义View中canvas的宽高和View的宽高关系
经测试,onDraw方法中通过canvas.getWidth和canvas.getHeight得到的宽高和View的宽高一致并不是某些博客中说的和屏幕宽高一致原创 2016-01-06 19:28:56 · 1593 阅读 · 0 评论 -
Canvas的drawTextOnPath参数含义
本文中的path为一条弧线图一为两个参数都设置为0的效果图二为hoffset设置为50的效果图三为voffset设置为50的效果把图一和图三合并了一下,方便看效果参数一为文字水平方向的偏移量参数二维文字垂直方向的偏移量均可以设置为负数原创 2016-01-07 12:55:07 · 3215 阅读 · 0 评论 -
andbase学习笔记一
andbase中管理屏幕适配的类AbViewUtil重要的方法:getAbsListViewHeight:获取listview或Gridview的高度measureView:测量view的宽高sp2dip……:各个单位间的转换scaleValue(Context context, float value)根据屏幕大小转换数据,其中后面的val原创 2016-03-18 14:59:23 · 433 阅读 · 0 评论 -
andbase学习笔记二
andbase之app相关类重要的方法:getPhoneNumber:获取手机号getQQNumber:获取qq号 getWeiXinNumber:获取微信号getIMEI:获取手机串号 设备唯一串号getIMSI:获取Imsi与SIM卡有关getSSID(Context context):获取无线网名称getMac:获取mac地址g原创 2016-03-18 16:53:06 · 282 阅读 · 0 评论 -
amdbase学习笔记三
andbase之AbStreamUtil流工具类重要方法:public static InputStream bytes2Stream(byte[] buf) :将byte数组转换为输入流public static byte[] stream2bytes(InputStream inStream):将输入流转换为byte数组 public static byte[] str原创 2016-03-18 18:04:22 · 343 阅读 · 0 评论 -
popwindow焦点问题
在使用popwindow时,由于popwindow会覆盖整个activity,会导致单击其他空白地方,不会消失在 pw.showAsDropDown();方法之前加上pw.setBackgroundDrawable(new BitmapDrawable());即可实现点击空白处pw消失但是popwindow会遮挡其他按钮的点击事件,将pw = new PopupWindow原创 2016-04-01 16:39:38 · 647 阅读 · 0 评论 -
andbase学习笔记四
AbimageUtil:图片处理类重要方法:public static Bitmap getBitmap(String url):从互联网上获取原始大小图片public static Bitmap getBitmap(File file):获取原图public static Bitmap getBitmap(String url,int desiredWidth, int原创 2016-03-21 16:40:06 · 312 阅读 · 0 评论 -
andbase学习笔记五
AbFileUtil.java 文件操作类重要方法: public static Bitmap getBitmapFromByte(byte[] imgByte,String fileName,int type,int desiredWidth, int desiredHeight):将图片的byte[]写入本地文件.public static Bitmap getBitmapFr原创 2016-03-24 18:08:19 · 474 阅读 · 0 评论 -
Fragment的生命周期
Fragment在刚创建的时候会依次执行onCreate---->onCreateView---->onStart-------->onResumeFragment在切换时执行onPause-------->onStopFragment在切换回来时执行onCreateView---->onStart-------->onResume原创 2016-03-25 10:34:35 · 246 阅读 · 0 评论 -
andbase学习笔记六
AbDialogUtilpublic static AbSampleDialogFragment showFullScreenDialog(View view):全屏显示一个对话框.public static void showDialog(Context context,DialogFragment fragment):显示一个隐藏的的对话框.public static Ab原创 2016-03-28 17:44:27 · 232 阅读 · 0 评论 -
view.bringtofront
单独使用view.bringtofront方法wuxiao需要在后面加两行代码iv.bringToFront();(iv.getParent()).requestLayout();((View) iv.getParent()).invalidate();原创 2016-03-29 11:07:03 · 594 阅读 · 0 评论 -
在onCreate时获取view的宽高
使用view.post()方法,可以获取到view的宽高原创 2016-03-29 11:12:31 · 254 阅读 · 0 评论 -
canvas中paint画圆时strokewidth和radius的关系
原创 2016-01-06 19:18:54 · 1903 阅读 · 0 评论