欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

深入Android开发FAQ的详解

程序员文章站 2023-12-06 10:29:34
android 现在很火爆,其所谓的开放性和免费开源吸引了大批的手机硬件厂商进入了android阵营。其火爆的另一个原因是因为其平台应用开发,正如google所说,andr...
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条未读信息”