Android 往Framework中添加新资源的方法详解

所属分类: 软件编程 / Android 阅读数: 1428
收藏 0 赞 0 分享
有时候我们想在标准的Framework中添加自己的新的资源怎么办呢?
办法就是我们来尝试下。
通过Eclipse的联系,我们可以联想到是否就是简单的把字符串放在res的各个文件夹里面。先来试试看,编译,系统立即报错。为什么呢?
它提示你利用make update-api这个命令来更新public.xml文件或者把这个声明称hide类型。这个肯定不是我们想要的。
所以方法有二:
方法1:
正常添加完资源后,执行make update-api函数。系统更新res/values/public.xml文件。
方法2:正常添加完资源后,手动更改/res/values/public.xml文件。打开public.xml文件。发现结构如下:
复制代码 代码如下:

<resources> 
  <!-- We don't want to publish private symbols in Android.R as part of the  
       SDK.  Instead, put them here. --> 
  <private-symbols package="com.android.internal" /> 
  <!-- AndroidManifest.xml attributes. --> 
  <eat-comment /> 
<!-- ===============================================================  
     Resources for version 1 of the platform. 
     =============================================================== --> 
  <eat-comment /> 
  <public type="string" name="cancel" id="0x01040000" /> 
  <public type="string" name="copy" id="0x01040001" /> 
  <public type="string" name="copyUrl" id="0x01040002" /> 
   <public type="style" name="TextAppearance.Widget.TextView.SpinnerItem" id="0x01030052" /> 
  <public type="style" name="TextAppearance.WindowTitle" id="0x01030053" /> 
  <public type="attr" name="theme" id="0x01010000" /> 
  <public type="attr" name="label" id="0x01010001" /> 
  <public type="attr" name="icon" id="0x01010002" /> 
  <public type="attr" name="name" id="0x01010003" /> 
  <public type="attr" name="manageSpaceActivity" id="0x01010004" /> 
  <public type="attr" name="allowClearUserData" id="0x01010005" /> 
  <public type="attr" name="permission" id="0x01010006" /> 
  <public type="attr" name="readPermission" id="0x01010007" /> 
  <public type="attr" name="writePermission" id="0x01010008" /> 
  <public type="attr" name="protectionLevel" id="0x01010009" /> 
<!-- ===============================================================  
     Resources added in version 7 of the platform (Eclair MR1). 
     =============================================================== --> 
  <eat-comment /> 
  <public type="attr" name="author" id="0x010102b4" /> 
  <public type="attr" name="autoStart" id="0x010102b5" /> 
</resources> 

这样,我们可以自己动手添加。
推荐方法1,也是最标准的做法。为啥?
1:避免id重复。
2:麻烦
3:习惯标准化做法。
更多精彩内容其他人还在看

Android网络编程之获取网络上的Json数据实例

这篇文章主要介绍了Android网络编程之获取网络上的Json数据实例,本文用完整的代码实例讲解了在Android中读取网络中Json数据的方法,需要的朋友可以参考下
收藏 0 赞 0 分享

Android中的windowSoftInputMode属性详解

这篇文章主要介绍了Android中的windowSoftInputMode属性详解,本文对windowSoftInputMode的9个属性做了详细总结,需要的朋友可以参考下
收藏 0 赞 0 分享

Android网络编程之UDP通信模型实例

这篇文章主要介绍了Android网络编程之UDP通信模型实例,本文给出了服务端代码和客户端代码,需要的朋友可以参考下
收藏 0 赞 0 分享

Android中使用ListView实现漂亮的表格效果

这篇文章主要介绍了Android中使用ListView实现漂亮的表格效果,本文用详细的代码实例创建了一个股票行情表格,需要的朋友可以参考下
收藏 0 赞 0 分享

Android中刷新界面的二种方法

这篇文章主要介绍了Android中刷新界面的二种方法,本文使用Handler、postInvalidate两种方法实现界面刷新,需要的朋友可以参考下
收藏 0 赞 0 分享

Android SDK三种更新失败及其解决方法

这篇文章主要介绍了Android SDK三种更新失败及其解决方法,需要的朋友可以参考下
收藏 0 赞 0 分享

Android学习笔记——Menu介绍(一)

Android3.0(API level 11)开始,Android设备不再需要专门的菜单键。随着这种变化,Android app应该取消对传统6项菜单的依赖。取而代之的是提供anction bar来提供基本的用户功能
收藏 0 赞 0 分享

Android学习笔记——Menu介绍(二)

这次将继续上一篇文章没有讲完的Menu的学习,上下文菜单(Context menu)和弹出菜单(Popup menu)
收藏 0 赞 0 分享

Android学习笔记——Menu介绍(三)

今天继续昨天没有讲完的Menu的学习,主要是Popup Menu的学习,需要的朋友可以参考下
收藏 0 赞 0 分享

Android显示网络图片实例

这篇文章主要介绍了Android显示网络图片的方法,以实例形式展示了Android程序显示网络图片的方法,非常具有实用价值,需要的朋友可以参考下
收藏 0 赞 0 分享
查看更多