Android小知识库

764 查看

这份是我工作以来,总结的小知识库,有些知识点现在看来太LOW了,把还觉得有用的分享出来!

Genymotion下载虚拟镜像Connection timeout

Add new device出现的问题:

Failed to deploy virtual device.
Unable to create virtual device.Connection timeout occurred.

解决方案:

  1. 当选择Google Nexus 5 – 6.0.0 – API 23 – 1080×1920下载device失败后,到C:Users用户主目录AppDataLocalGenymobileGenymotionova下看到genymotion_vbox86p_6.0_160114_090449.ova,大小却是0KB,在C:Users用户主目录AppDataLocalGenymobilegenymotion.log,打开该文件,找到类似“http://files2.genymotion.com/dists/6.0.0/ova/genymotion_vbox86p_6.0_160114_090449.ova”路径,即您想要下载的镜像文件URL;
  2. 用迅雷去下载,下载完成后放到C:Users用户主目录AppDataLocalGenymobileGenymotionova;
  3. 重新点击Google Nexus 5 – 6.0.0 – API 23 – 1080×1920去下载,验证安装后即会显示在设备列表中。

Android Studio 如何Debug

单击F5(Step Over),单行一个个方法执行
单击F6(Step Into),单行执行
单击F7(Step Out),不往下执行,回到上一行
单击F8(Resume Program),跳出当前断点

Android Studio设置默认的签名文件

新浪微博SSO登录,微信分享这些都需要签名打包,才能看到效果,设置默认签名文件为自己的签名jks,这样就不需要打包了。
在app目录下添加你的.jks,然后app的build.gradle文件中的增加以下内容:
第一种:


第二种:


这样编译出来的debug版本直接用的是你的正式签名

Fragment懒加载


Android studio头注释和方法注释

File | Settings | Editor|File and Code Templates|Includes|File Header


输入我们想要设置的注释模板

adapter.getPositionForSelection()和getSectionForPosition()

getPositionForSection()根据分类列的索引号获得该序列的首个位置
getSectionForPosition()通过该项的位置,获得所在分类组的索引号

getResources().getColor(R.color.color_name) is deprecated和drawableTop


showPopupWindow


v:父布局
demo_popup_window_bg.xml


onFinishInflate()

view的onFinishInflate()何时调用的?
当View中所有的子控件均被映射成xml后触发;
MyView mv = (MyView)View.inflate (context,R.layout.my_view,null);
当加载完成xml后,就会执行那个方法;
我们一般使用View的流程是在onCreate中使用setContentView来设置要显示Layout文件或直接创建一个View,在当设置了ContentView之后系统会对这个View进行解析,然后回调当前视图View中的onFinishInflate方法。只有解析了这个View我们才能在这个View容器中获取到拥有Id的组件,同样因为系统解析完View之后才会调用onFinishInflate方法,所以我们自定义组件时可以onFinishInflate方法中获取指定子View的引用。

Fragment设置隐藏或显示某个Fragment

MainFragment点击


MainActivity


获取arrt的值

不同主题下需要把颜色,数值写成attr属性
xml里,我们可以简单的引用attr属性值