Android碎片积累

来源:互联网 发布:淘宝如何投诉卖家店铺 编辑:程序博客网 时间:2024/06/14 06:49

Android学习中有很多零碎的知识,做个记录方便查看(连载中………)。

1. 启动系统图库:

//调用系统的图库Intent intent = new Intent(Intent.ACTION_PICK, null);intent.setDataAndType(MediaStore.Images.Media.EXTERNAL_CONTENT_URI,"image/*");startActivityForResult(intent,100);//重写onActivityResult()方法@Overrideprotected void onActivityResult(int requestCode, int resultCode, Intent data) {        super.onActivityResult(requestCode, resultCode, data);        if (requestCode == 100 && resultCode == RESULT_OK) {            if (data != null) {                mPhoto.setImageURI(data.getData());            }        }    }

2. 修改Edittext的字体:

//提前将需要的字体放入assets文件下word = (EditText) findViewById(R.id.word);    word.setTypeface(Typeface.createFromAsset(getAssets(),"test.ttf"));

3. 获取屏幕截图:

//最后会将屏幕截图作为Bitmap返回View view = getWindow().getDecorView();view.setDrawingCacheEnabled(true);view.buildDrawingCache();view.getDrawingCache()

4. 在AS中创建lib,asset等文件夹:
刚刚使用AS的时候找不到lib,assets文件夹,有两种办法:

方法一:右键Module->new->Folder->Assets Folder;这里边可以新建常用的文件夹。

方法二:把视图切换到Progect视图 progect视图 然后打开需要创建lib文件夹的Module,选择src->main->右键->new -> Directory,输入jniLibs,然后切换回Android视图下便会有libs文件夹

lib文件夹的创建

5. ANR问题出现的三种常见原因:

  1. KeyDispatchTimeout(5 seconds) – 主要原因
    按键或触摸事件在特定时间内无响应

  2. BroadcastTimeout(10 seconds)
    BroadcastReceiver在特定时间内无法处理完成

  3. ServiceTimeout(20 seconds) – 小概率原因
    Service在特定的时间内无法处理完成

6. FC问题出现的原因:

  1. 应用运行时抛出了OOM问题(OutOfMemoryError)
  2. 应用运行时抛出了RuntimeException问题

7.Meterial Design中关于阴影高度的标准建议:

  1. 应用条:4dp
  2. 浮动按钮:静态:2dp 敲击状态:8dp
  3. 浮动动作按钮(FAB):静态:6dp 敲击状态:12dp
  4. 卡片:静态:2dp 选中状态:8dp
  5. 菜单和子菜单:菜单:8dp 子菜单:9dp(为子菜单增加 1dp)
  6. 对话框:24dp
  7. 导航抽屉和右抽屉:16dp
  8. 底部单页:16dp
  9. 刷新按钮:3dp
  10. 快速查询/搜索条:静止状态:2dp 滚动状态:3dp
  11. Snackbar:6dp
  12. 切换按钮:1dp

8.线性布局中的weight的含义:
android:layout_weight的真实含义是:如果View设置了该属性并且有效,那么该 View的宽度等于原有宽度(android:layout_width)加上剩余空间的占比。

9. Android中的.9图四边含义:
左上边代表拉伸区域,右下边代表padding box,就是间隔区域

0 0
原创粉丝点击