最近在做android2.2 往 android4.0迁移公共控件的工作,遇到些问题,在此做个记录,以便以后查阅。

android2.2 frameworks在theme style这块是比较简单的就一套主要的theme “Theme”,项目中使用sdk_addon方式更改style中定义,没有问题,既没有影响frameworks中源码,又达到修改部分公共控件的效果。

然而,在把android2.2 的的代码使用sdk_addon方式合并代码到android4.0上时,出现了浏览器中button,radiobutton , checkbox异常不能显示现象,经查阅,原来浏览器在显示这些button时使用android原生控件,而因此造成不能显示,具体原因因项目急于结项,还未查明,据我的估计是,原来是只有“Theme”一个主题,现在4.0是"Theme"、"Theme.Holo"两个主题,而且以"Theme.Holo"为主,而覆盖是按默认覆盖,其实并没有覆盖到"Theme.Holo" 下button,radiobutton,checkbox这些,如果按照"Theme.Holo"下一起覆盖应该是没有问题的。最终考虑到项目是从2.2迁移而来,大部分应用也是按2.2的走的,因此就直接在frameworks里把”Theme“对应下的style修改了。

另外有几点,我觉得值得记录下来的,android4.0使用一个theme_default,style_default的xml,里面都是定义的默认相关style调用,google建议修改默认都在此两个xml里修改,从各个公共控件默认调用来看,虽然都是先走attrs.xml 然后在对应theme里找,但似乎在4.0里这里google本身还处理的比较乱,没有全部都是对应到theme_default里,theme_default里也不是所有的都是走style_default,所以修改公共控件的时候还是要走查一下代码。其实主要还是修改style。

更多相关文章

  1. 【安卓面试笔记】Content Provider(五)
  2. Android实践—BroadcastReceiver应用于短信监控
  3. Android截屏方法总结
  4. android如何停止Thread和AsyncTask
  5. android 杂
  6. Android(安卓)中自定义控件和属性(attr.xml,declare-styleable,T
  7. Android(安卓)源码分析 - 事件分发机制
  8. android(android studio)中使用注解框架butterknife
  9. Android(安卓)SlidingDrawer 抽屉效果的实现

随机推荐

  1. iTextPdf最简单最彻底解决中文显示
  2. 我的Android进阶之旅------>Android实现
  3. Android屏幕图标尺寸规范
  4. android.support.v7.widget.TintContextW
  5. Android(安卓)SQLite 支持嵌套事务吗?
  6. android web services2
  7. Android(安卓)纯代码化编码2_基本控件
  8. 如何让Android系统或Android应用执行shel
  9. ANDROID编程技巧
  10. Android(安卓)环境配置常见的两个错误