首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >R.styleable不能解决,为什么?

R.styleable不能解决,为什么?
EN

Stack Overflow用户
提问于 2011-07-13 07:19:00
回答 7查看 44.7K关注 0票数 29

我有一个resources.xml文件位于direcotry值/下,这是

/values/resources.xml

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8"?> 
<resources> 
    <declare-styleable name="TheMissingTabWidget"> 
        <attr name="android:divider" /> 
    </declare-styleable> 
</resources>

在我的java代码中,当我试图通过R.styleable.TheMissingTabWidget访问这个资源时,eclipse抱怨样式不能被解析,或者不是字段。为什么?为什么我不能访问这个资源?(我正在使用Android2.1更新)。

EN

回答 7

Stack Overflow用户

发布于 2011-07-13 07:28:34

请制作像这样的values/attrs.xml资源

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <declare-styleable name="**com.admob.android.ads.AdView**"><--- where u want to use
       <attr name="backgroundColor" format="color" />
       <attr name="TextColor" format="color" />
       <attr name="keywords" format="string" />
       <attr name="refreshInterval" format="integer" />
    </declare-styleable>
</resources>
票数 22
EN

Stack Overflow用户

发布于 2011-07-13 08:01:04

根据SDK发行说明的说法

android.R.styleable类及其字段被从公共API中删除,以更好地确保应用程序的前向兼容性。在android.R.styleable中声明的常量是特定于平台的,并且可能在不同版本之间发生任意更改,因此不适合应用程序使用。您仍然可以从资源或代码中访问平台的可样式属性。要做到这一点,请使用项目的res/value/R.attts文件中的一个自定义资源元素来声明,然后在其中声明属性。有关示例,请参见“sdk”/samples/ApiDemos/res/value/attalls.xml。有关自定义资源的详细信息,请参阅自定义布局资源。请注意,android.R.styleable文档仍然在SDK中提供,但仅作为各种元素的平台可样式属性的引用。

查看ApiDemos代码和文件res/value/atts.xml

票数 17
EN

Stack Overflow用户

发布于 2020-05-13 19:05:44

在我的例子中,我无意中做了import android.R而不是import com.<mypackage>.R

用您的包名替换<mypackage> (或者只删除当前的导入,让Android来完成其余的工作)。

票数 14
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6675403

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档