安卓小知识
1.Invalidate()和PostInvalidate(),這兩個方法作用都一樣,就是呼叫ui線程重新繪制界面也就是刷新界面。那為什么要兩個方法呢,這是因為android是多線程應用,大家應該都知道在非UI線程中是不能直接操作界面控件的,所以第2個方 法就幫助大家在子線程中刷新界面,第一個方法則是在UI線程中刷新界面。
2.getX()和getRawX()這兩個方法的左右都是獲取當前點在屏幕上的坐標,getX()是獲取當前點相對于當前視圖左上角的坐標,getRawX()則是獲取當前點相對于手機屏幕左上角的坐標。
3.獲取屏幕的大小
EditText中android:capitalize屬性的作用
sentences僅第一個字母大寫;
words每一個單詞首字母大小,用空格區分單詞;
characters每一個英文字母都大寫。
android 生成SHA1
keytool -list -v -keystore debug.keystore數組與集合的轉換
//集合變數組 ArrayList<String> permissionArray = new ArrayList<>(); permissionArray.add("hehe"); permissionArray.add("嘻嘻"); String[] str = permissionArray.toArray(new String[permissionArray.size()]); //數組變集合 String[] array=new String[3]; array[0]="王利虎"; array[1]="張三"; array[2]="李四"; List<String> list=Arrays.asList(array);相機分辨率
E/TAG: initCamrea: 4096,2160 E/TAG: initCamrea: 3840,2160 E/TAG: initCamrea: 1920,1080 E/TAG: initCamrea: 1280,960 E/TAG: initCamrea: 1280,720 E/TAG: initCamrea: 864,480 E/TAG: initCamrea: 800,480 E/TAG: initCamrea: 720,480 E/TAG: initCamrea: 640,480 E/TAG: initCamrea: 640,360 E/TAG: initCamrea: 480,320 E/TAG: initCamrea: 352,288 E/TAG: initCamrea: 320,240 E/TAG: initCamrea: 176,144 E/TAG: initCamrea: 160,120三種方法獲得縮略圖
//第一種
public staticBitmap getVideoThumbnail(String videoPath) {
MediaMetadataRetriever media =newMediaMetadataRetriever();
media.setDataSource(videoPath);
Bitmap bitmap = media.getFrameAtTime();
return bitmap;
}
//第二種
public staticBitmap getVideoThumbnail(String videoPath,intwidth,intheight,intkind) {
Bitmap bitmap =null;
bitmap = ThumbnailUtils.createVideoThumbnail(videoPath, kind);
bitmap = ThumbnailUtils.extractThumbnail(bitmap, width, height, ThumbnailUtils.OPTIONS_RECYCLE_INPUT);
return bitmap;
}
//第三種
Bitmap bitmap = MediaStore.Video.Thumbnails.getThumbnail(cr, id, MediaStore.Video.Thumbnails.MINI_KIND, null);
總結
- 上一篇: 《博弈论》
- 下一篇: 投票程序c语言论文,c语言投票程序摘要.