Toast 也是可以自定义通过Window 添加进去,系统的实现方式为大致为 加载系统的布局文件 一个textview,通过window add进去 ,所有我们可以自定义各种Toast样式,这个使用有两种做法
- 自己写一个view 通过添加到window中,在小米手机上有问题,具体表现为因为让view添加到程序最上层,需要添加一个权限 android.permission.SYSTEM_ALERT_WINDOW 如果不添加 会崩溃,而且默认小米手机是把这个权限关闭的,而且还显示不了, 而有些手机上不需要加这个权限,而且可以正常显示,暂时无法解决
- 第二种比较适合,通过继承或者内部持有Toast对他的封装,通过反射的操作对他进行多的设置 是可以实现比较好的效果,
popwindow 放了一个EditText 点击 输入法会覆盖:
让popwindow设置
this.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);
Android 通知栏 的问题 表现为 通知打开被杀死的应用 B界面 B做逻辑判断(频道此时A界面没启动过)到A界面B关闭,此时A界面在打开通知,想启动到B界面发现 没效果
解决方案 将B界面设置为SingTask 或者启动B界面的flag设置为 clearTask 具体原因暂不清楚
gradle 动态配置 如果出现模块依赖 日志打印在B模块 如何在B模块(依赖的模块) 设置gradle 中 debug 和release 中的buildconfig 会无效解决方法
在library中加入
android {
publishNonDefault true
}
dependencies {
releaseCompile project(path: ':library', configuration: 'release')
debugCompile project(path: ':library', configuration: 'debug')
}
TextView 空格两行 全角的时候打空格
获取drawable或mipmap下的图片资源的uri
Uri uri = Uri.parse(ContentResolver.SCHEME_ANDROID_RESOURCE + “://”
+ getResources().getResourcePackageName(R.drawable.ll) + “/”
+ getResources().getResourceTypeName(R.drawable.ll) + “/”
+ getResources().getResourceEntryName(R.drawable.ll));
最近升级到Android Studio2.2,导入工程后,发现报入后报以下错误,
Unsupported method: AndroidProject.getPluginGeneration().
The version of Gradle you connect to does not support that method.To resolve the problem you can change/upgrade the target version of Gradle you connect to.Alternatively, you can ignore this exception and read other information from the model.
解决方案:
Android Studio 检查Instant Run是否可用时会出现这个问题,禁用Instant Run可以解决这个问题。
File -> Settings -> Build, Execution, Deployment -> Instant Run.