Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/179.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在android应用程序中引用图标的方法_Java_Android_Icons - Fatal编程技术网

Java 在android应用程序中引用图标的方法

Java 在android应用程序中引用图标的方法,java,android,icons,Java,Android,Icons,我知道你可以引用一个图标 <item android:id="@+id/config" android:icon="@drawable/ic_config" android:title="@string/config" app:showAsAction="ifRoom"/> 现在我不明白我的配置映像和?iconfig之间的映射是如何工作的,我可以看到“iconfig”出现在R.java和attr.xml文件中,而不是其他文件中。 有人能解释一下吗?“?”

我知道你可以引用一个图标

<item   android:id="@+id/config"
    android:icon="@drawable/ic_config"
    android:title="@string/config"
    app:showAsAction="ifRoom"/>
现在我不明白我的配置映像和
?iconfig
之间的映射是如何工作的,我可以看到“iconfig”出现在R.java和attr.xml文件中,而不是其他文件中。

有人能解释一下吗?

“?”用于当您需要在有多个主题的情况下引用绘图表时。它简化了在主题之间切换时的逻辑,并让Android自动决定使用哪种资源。

当您需要在具有多个主题的情况下引用绘图时,会使用“?”。它简化了主题切换时的逻辑,让Android自动决定使用哪种资源。

请通过以下链接:

编辑

为方便起见,我从上面提供的链接发布所需部分:

与样式一样,主题也在XML元素中声明, 并以相同的方式引用。区别在于你加了 整个应用程序或活动的主题,通过 Android清单主题中的元素不能是 应用于单个视图

下面是一个主题的示例声明:


真的
@可拉拔/筛框
@可绘制/屏幕\背景\白色
#FF000000
#FFFFFFFF
?面板前底色
14
?面板文本颜色
?面板文本大小
注意使用at符号(@)和问号(?)来 参考资料。at符号表示我们正在引用 以前在其他地方定义的资源(可能来自本项目 或者来自Android框架)。问号表明我们是 在当前加载的主题中引用资源值。这是 通过引用特定的名称值来完成。(例如:。, panelTextColor使用指定给panelForegroundColor的相同颜色, 此技术只能在XML资源中使用


请浏览以下连结:

编辑

为方便起见,我从上面提供的链接发布所需部分:

与样式一样,主题也在XML元素中声明, 并以相同的方式引用。区别在于你加了 整个应用程序或活动的主题,通过 Android清单主题中的元素不能是 应用于单个视图

下面是一个主题的示例声明:


真的
@可拉拔/筛框
@可绘制/屏幕\背景\白色
#FF000000
#FFFFFFFF
?面板前底色
14
?面板文本颜色
?面板文本大小
注意使用at符号(@)和问号(?)来 参考资料。at符号表示我们正在引用 以前在其他地方定义的资源(可能来自本项目 或者来自Android框架)。问号表明我们是 在当前加载的主题中引用资源值。这是 通过引用特定的名称值来完成。(例如:。, panelTextColor使用指定给panelForegroundColor的相同颜色, 此技术只能在XML资源中使用


这可能会对您有所帮助这可能会对您有所帮助我明白了,但是如果我引用IConfig,它会在哪个文件中列出它,它会采用ic_配置映像?我还不明白映射。@user2870415请检查我的编辑…希望它现在能帮助你。谢谢。我明白了,但是如果我引用IConfig,它会在哪个文件中列出,它是采用ic_配置图像的?我还不明白映射。@user2870415请检查我的编辑…希望它现在能帮助你。谢谢
    android:id="@+id/config"
    android:icon="?iconConfig"
    android:title="@string/config"
    app:showAsAction="ifRoom"/>
<?xml version="1.0" encoding="utf-8"?> <resources>   <style name="CustomTheme">        
    <item name="android:windowNoTitle">true</item>
    <item name="windowFrame">@drawable/screen_frame</item>
    <item name="windowBackground">@drawable/screen_background_white</item>
    <item name="panelForegroundColor">#FF000000</item>
    <item name="panelBackgroundColor">#FFFFFFFF</item>
    <item name="panelTextColor">?panelForegroundColor</item>
    <item name="panelTextSize">14</item>
    <item name="menuItemTextColor">?panelTextColor</item>
    <item name="menuItemTextSize">?panelTextSize</item>   </style> </resources>