Android 开发大坑汇总(持续更新)

≡放荡痞女 提交于 2020-03-02 09:17:05

android开发大坑汇总


1.EditText --> gravity与hint冲突

表现在2.X版本当在EditText设置android:gravity="center"属性后,android:hint会无效。

解决办法:再添加android:ellipsize="start"就会好了。

感觉:很无厘头的大坑,记住吧!要不旧机子就只有显示不出来的份。


2.DatePickerDialog --> 时间超过最大值变为最小时间时显示出错。

解决办法:暂无

感觉:这个控件的bug一直存在,很多应用用这个控件。。


3. 小米部分机型(例如:小米NOTE PRO, 固件:5.1.1 LMY47V)。禁用WebView的硬件加速,会导致部分web动画长时间不结束。影响用户使用。解决方式:开启硬件加速!

android:hardwareAccelerated="true"


4. static 变量(静态变量)被回收。

    类的static变量会在内存少的时候类被回收后重置。

    比如 static String cookies==‘xxxxxxxx’;回收后,cookies会被初始化为原始值。

    360的清理内存会触发此操作。

    Application中的static变量稍微耐久一些,360的清理内存不会导致static变量初始化。

    但是小米的清理进程会导致Application完全关闭。 


5. 使用Fragment时,要确保父容器为FrameLayout. 

    如果使用LinearLayout作为父容器-》遇到大坑:fragment里的layout_weight无效。 


6. android gradle 2.0.0 以上 

    android {   

         buildTypes {

                release {

                    minifyEnabled true

                    shrinkResources true

                }   

         }

    }

    shrinkResources 会有问题。因为许多方法是通过反射方式来获得的。shrink方式会导致很多资源丢失。shrinkResource使用的算法有问题。 慎用 shrinkResources。


易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!