编程是一门艺术

raptor.zh(at)gmail.com Creative Commons License
本作品采用知识共享署名-非商业性使用-相同方式共享 2.5 中国大陆许可协议进行许可。

archives 存档

01 Jan - 31 Dec 2018
01 Jan - 31 Dec 2017
01 Jan - 31 Dec 2016
01 Jan - 31 Dec 2015
01 Jan - 31 Dec 2014
01 Jan - 31 Dec 2013
01 Jan - 31 Dec 2012
01 Jan - 31 Dec 2011
01 Jan - 31 Dec 2010
01 Jan - 31 Dec 2009
01 Jan - 31 Dec 2008
01 Jan - 31 Dec 2007
01 Jan - 31 Dec 2006
01 Jan - 31 Dec 2005
01 Jan - 31 Dec 2004
01 Jan - 31 Dec 2003
01 Jan - 31 Dec 2002
01 Jan - 31 Dec 2001
01 Jan - 31 Dec 2000
01 Jan - 31 Dec 1999

--

links 链接

--

HoloEveryWhere笔记(续坑之二)

这回说的是版本问题。

前几天手贱把 SDK 从 21 升级到 22 ,然后 HoloEveryWhere 就不正常了,只能也更新了一下。结果发现 ActionBarSherlock 又改了,目录结构调整了一下。另外 HoloEveryWhere 的 SupportLibrary 路径也变了。还好有 ln -s 可以搞定。

但是更新完 HoloEveryWhere 以前用它写的程序要么编译不了,要么运行出错,或者运行时卡死——这可真是太坑爹了。

研究半天才发现,貌似是 .classpath 造成的问题,具体原因懒得研究(也有可能是 SDK22 的原因),重新创建了应用,然后把代码和资源复制过来,通常就可以解决运行时出错的问题了。至于卡死的问题,貌似也是与升级有关,修正了几个警告以后不再出现。

除了上面说的版本问题以外,还有一些与前坑类似的同名类或方法问题。

比 如 ListView 的 Adapter 操作,标准组件可以用 listView.getAdapter() 来取得绑定的 Adapter ,但是在 HoloEveryWhere 里不可以这么做,会出错。看了一下源码才知道要用 getAdapterSource() 代替之才对。

另 外,我原来的代码里用到过通过 alertTitle ID 来取得 AlertDialog 的标题(因为没有 getTitle 方法),但是这个方法在 HoloEveryWhere 的 AlertDialog 中不可用。当然原来这个方法本来也不是什么正规的做法,是我从 StackOverflow 上搜来的,现在这招不灵了,只能老老实实自己派生一个 Dialog 类来操作。

最后再说一下主菜单的问题,不知道是不是我之前使用的方式哪里不对,目前这个版本在 ActionBar 上同时使用 Tab 和主菜单都已经没问题了。

推送到[go4pro.org]

Trackback link:

Please enable javascript to generate a trackback url

No trackbacks

评论(0)


 
   
 
  表情图标 

 


提示: 除了 <b> 和 <i> 之外,其他的Html标签都将从您的评论中去除.url或mail地址会被自动加上链接.