【生意多】-免费发布分类信息
当前位置: 首页 » 新闻 » IT资讯 » 正文

了解Android资源

放大字体  缩小字体 发布日期:2020-07-12 08:55:16    浏览次数:8
导读

  。位于res/values下,可以有一个或多个xml文件。其中最为常见的是strings.xml,对于demo这类小例子,为了方便常全部都放在strings.xml中,但实际开发中,应进行合理组织。下面事xml文件的例子:  需要留意,对于标准的xml文件,有xmlns来指明schema,在此可以省略。如果非要加上,可以为:resourcesxmlns=。每定义一

  。位于res/values下,可以有一个或多个xml文件。其中最为常见的是strings.xml,对于demo这类小例子,为了方便常全部都放在strings.xml中,但实际开发中,应进行合理组织。下面事xml文件的例子:

  需要留意,对于标准的xml文件,有xmlns来指明schema,在此可以省略。如果非要加上,可以为:resourcesxmlns=。每定义一个string,在R.文件中将自动生成ID,由此可以通过ID,如R.string.app_name进行对应,ID事int,但Android或根据需要转换为对应的string。

  编译和非编译的资源。资源来源两类文件:XML和raw文件,对应的也可以分为编译为二进制格式的,和非编译直接copy的。对于一般的资源XML文件,需要将XML的节点翻译的ID,所以需要编译为binary。其中res/xml中可放置任何XML格式的文件,如们自定的,可以通过R.xml.file_name来指向该资源,并用Android提供的XML reader来解析,如XMLPullPaser。

  复数Plurals。这对中文而言没有什么意义,但是在英文中,有Thereis one egg. 和There are 5 eggs. 的区别。需要在信息表达方面进行区分对待,plurals就是针对此进行处理。

  在quantity中有效的选择显示有6个,但是如果locale为en时,实际有效的是“one”和“other”,设置其余的,经试验,并无效果。书中言,对于其他的语言设置也是这样,除了捷克语,对于2-4,对应为few。

  Wei:经过试验,在XML中用%s来替代%d是可行的,但是如果input的数目超过1个,如2个或以上,则在编译时会报错。plurals就只是为了处理西文中复数的问题,不要搞得太复杂。对于上面的例子,第二和第三参数应该匹配,这样才便于阅读,例如res.getQuantityString(R.plurals.rt_test_plurals,6,6)。

  再谈String。string资源可以带有输入,可以带有html格式。我们看看以下的string资源的获取和输出。

  //特别留意最后两个。在资源中带有HTML的格式,如果仍用b/b,在获取资源时,这部分信息会消失,需要用和来表示左右尖括号。多少有些麻烦。此外要使HTML格式有效,需要告知TextView这是一个HTML格式,否则会直接将b/b作为字符串内容显示。下面试验再次证明需要将尖括号改写。

  其中dp为Android的尺寸单位,,android中定义的dimension单位有以下这些:px(Pixels ,像素) :对应屏幕上的实际像素点。

  dp(与密度无关的像素) :逻辑长度单位,在 160 dpi 屏幕上,1dp=1px=1/160英寸。随着密度变化,对应的像素数量也变化,但并没有直接的变化比例。

  sp(与密度和字体缩放度无关的像素):与dp类似,但是可以根据用户的字体大小首选项进行缩放。

  Image资源。由于手机尺寸的不同,同一个图片,可制造成不同的尺寸,放置在res/drawable-?dpi中,系统会进行自动选择,ic_launcher图标。我们也可以不考虑手机实际尺寸,使用同一个图标,可以放置在res/drawable中。试验,为了简单,采用同一尺寸。图片的格式可以是*.gif,*.jpg和*.png。

  一片颜色不好看,要进行复杂地设置,需要单独在一个 xml文件中,通过shape来描述。该文件放置在res/drawable/目录下。下面是my_round_red_retangle.xml的内容

 
关键词: 安卓资源
(文/小编)
打赏
免责声明
• 
本文为小编原创作品,作者: 小编。欢迎转载,转载请注明原文出处:http://www.31duo.com/news/show-372631.html 。本文仅代表作者个人观点,本站未对其内容进行核实,请读者仅做参考,如若文中涉及有违公德、触犯法律的内容,一经发现,立即删除,作者需自行承担相应责任。涉及到版权或其他问题,请及时联系我们。
 

(c)2016-2019 31DUO.COM All Rights Reserved浙ICP备19001410号-4

浙ICP备19001410号-4