Android中,有些情况必须使用不同的实例,不能图省事就是用同一个实例,否则会出现莫名奇妙的问题,例如以下情况:
1.SpannableStringBuilder:
一段字符串需将其中括号里面的字符替换成红色,核心代码如下:
final Pattern highlight = Pattern.compile("\\(.+?\\)");
Matcher m = highlight.matcher(spannableStr.toString());
while (m.find()) {
spannableStr.setSpan(new ForegroundColorSpan(Color.RED), m.start(), m.end(),
Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
}
注意,必须使用New ForegroundColor(Color.RED),而不能在while循环外面创建一个实例,然后在while循环里面传入,这样所有设置会用到同一个实例,只有最后一个会生效,前面的不会生效(没有深入研究机制)
2.设置背景:
比方说有几个不同的控件,然后有一个您自己从Shape类继承的自定义类BoarderShape,如果几个空间background相同,必须为每个控件设置一个new BoarderShape()实例,不能共用一个,否则也会出问题。
3.应该还有其他类似情况,反正这种情况挺难调试的,平常留心就可以了。
分享到:
相关推荐
Android Studio实例源码,主要介绍常用app的代码
android开发sqliteDataBase使用实例
android进度条的基本使用实例,对初学者还是很有帮助的哦
Android核心技术与实例详解 第2版
《Android核心技术与实例详解》以Android应用程序的开发为主题,并结合真实的案例向读者详细介绍了.Android的基本组件的使用及应用程序开发的整个流程。全书分为三篇共18章,第一篇以简单易懂的实例为依托,详细介绍...
android核心技术与实例详解光盘源代码13---18章
Android 入Android 入门实例门实例Android 入门实例Android 入Android 入门实例Android 入门实例门实例
Android Camera使用实例
Android BLE蓝牙例子(包括android版Lightblue)实例源码: 源码里面有Bluetooth4_3/BLEDemo/Android_Lightblue.apk三个.前两个是BLE的demo。BLEDemo这个功能较Bluetooth4_3多一些,有兴趣的可以都看下。Android_...
资源名称:Android核心技术与实例详解 第2版内容简介:《Android核心技术与实例详解(第2版)(畅销书再版)》以Android应用程序的开发为主题,结合真实的案例向读者详细介绍了Android基本组件的使用及应用程序开发的...
Android 相对布局实例 ,RalateLayout
android解析xml实例
android滑动菜单SlidingMenu实例
一个简单生动的Android RxJava使用实例
简单的Android RatingBar投票条实例。
android简单定位的实例。详见http://blog.csdn.net/limb99/article/details/18819925
Android.例子.实例.文件浏览器 Android.例子.实例.文件浏览器
android socket 编程实例 客户端是android应用程序, socket服务器端使用java作为服务器
Android NDK JNI 经典实例Android NDK JNI 经典实例Android NDK JNI 经典实例Android NDK JNI 经典实例Android NDK JNI 经典实例Android NDK JNI 经典实例Android NDK JNI 经典实例
android短信发送实例,基于android的短信发送实例,需要添加权限duan