J'ai un resources.xml fichier situé sous direcotry values / , c'est
/values/resources.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<declare-styleable name="TheMissingTabWidget">
<attr name="Android:divider" />
</declare-styleable>
</resources>
Dans mon code Java, lorsque je tente d'accéder à cette ressource par R.styleable.TheMissingTabWidget
, Eclipse se plaint du fait que le style ne peut pas être résolu ou n'est pas un champ . Pourquoi? Pourquoi je ne peux pas accéder à cette ressource? (J'utilise Android 2.1 mise à jour).
plz faire des ressources values/attrs.xml
comme celle-ci
<?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>
Selon les Notes de version du SDK ,
La classe Android.R.styleable et ses champs ont été supprimés de l'API publique afin de mieux assurer la compatibilité en aval des applications. Les constantes déclarées dans Android.R.styleable étaient spécifiques à la plate-forme et sujettes à des modifications arbitraires d'une version à l'autre. Vous pouvez toujours accéder aux attributs stylés de la plate-forme à partir de vos ressources ou de votre code. Pour ce faire, déclarez un élément de ressource personnalisé à l'aide de l'un des éléments du fichier res/values / R.attrs de votre projet, puis déclarez l'attribut à l'intérieur. Pour des exemples, voir "sdk" /samples/ApiDemos/res/values/attrs.xml. Pour plus d'informations sur les ressources personnalisées, voir Ressources de présentation personnalisée . Notez que la documentation Android.R.styleable est toujours fournie dans le SDK, mais uniquement en tant que référence des attributs stylables de la plate-forme pour les différents éléments.
Consultez le code ApiDemos et le fichier res/values / attrs.xml
Vous pouvez accéder à votre paquet stylisé comme ceci
<yourpackagename>.R.styleable.name
Ce que vous devez faire, c'est déclarer votre style dans attrs.xml , pas resources.xml . Ensuite, vous pourrez vous y référer à partir de votre code comme ceci:
R.styleable.TheMissingTabWidget