Android 现在很火爆,其所谓的开放性和免费开源吸引了大批的手机硬件厂商进入了Android阵营。其火爆的另一个原因是因为其平台应用开发,正如Google所说,Android开发上手很快,很容易入门,比其他平台开发上手容易得多。但是,想要成为一个高手,或是开发出一个优质的程序,却没有想像中和所宣传的那么容易。首先的原因就是Android的文档很不完善,很多Api的文档都轻描淡写,对于参数的说明,对返回值的说明和对一些注意事项都没有说明,更为让人受不了的是,很多Api都没有文档;另外一个原因就是Android在细节上做的不好,Google为了快速拿出东西,为了尽早的占领市场,就快马加鞭的弄出了一个操作系统,但是很多地方做的不完善,很多细节都没有做好,如果你仔细使用Android系统,你会发现,其中有很多的Bug,有些大,有些小,但总是有问题;如果你研究其代码,更会发现,很多东西都没有做好。
但话说回来,哪有完美的东西呢?做为开发者就要不断的学习,总结经验找到其中隐藏的陷阱,然后在开发过程中回避它或是解决它。
本文将记录一些开发中常常遇到的问题:
1. 如何方便快捷的显示如“有XX条未读信息”, 其中XX是可变的实际数目?
对于这个问题,首先想到的就是“有”+数目+"条未读信息“。稍微想一下就有第二个解决方案:”有#条未读信息“.replaceAll("#", 数目)。
但在Android建议这么做:
a. 首先在字串资源文件中如此声名字串:
复制代码 代码如下:
<string name="unread_notification">有<xliff:g id="number">%1$d</xliff:g>条未读信息</string>
b. 然后在使用的时候,这样使用
复制代码 代码如下:
Context.getString(R.string.unrread_notification, 20);
这样Resources.getString()会自动地替换,而得到我们想要的效果,最终显示效果就是:“有20条未读信息”