当前位置:编程学习 > wap >>

关于color.xml,android:background="@drawable/white"的变态问题

我在rec下建立了color.xml文件
<?xml version="1.0" encoding="UTF-8"?>
<resources>
<drawable name="darkgray">#808080FF</drawable>
<drawable name="white">#FFFFFFFF</drawable>
</resources>
但是在main.xml中
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="@drawable/white"//此行报错,反正意思就是@drawable/white找不到,不知道哪出了问题
    > --------------------编程问答-------------------- 似乎白色的编码是#FFFFFF六位的吧!不是八位的 --------------------编程问答-------------------- 好像不是这个问题呀,我在网上看了个表,都是8位,而且是区分大小写
我只想知道color.xml和mian.xml有什么关系,是不是一建立rec/color.xml就行了,问题是我这还是有错误,是@drawable/white找不到,反正就是不认 --------------------编程问答-------------------- 写错了,是放在rec\values\下,color.xml路径是没有错的 --------------------编程问答-------------------- 顶 --------------------编程问答-------------------- 我试了一个,没有问题呀,我用的是你写的color.xml :

color.xml 内容:


<?xml version="1.0" encoding="utf-8"?>

<resources>
   <drawable name="darkgray">#808080FF </drawable> 
   <drawable name="white">#FFFFFFFF</drawable>
</resources>


mail.xml 的内容:

<?xml version="1.0" encoding="utf-8"?>

<EditText xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/text"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:textSize="18sp"
    android:autoText="true"
    android:capitalize="sentences"
    android:background="@drawable/white"
    android:text="@string/hello_activity_text_text" />


你可以看看这段代码放你那有不有问题,反正在我这是没有问题的 --------------------编程问答-------------------- ERROR Error:No resource found that matches the given name(at 'background' value '@drawable/white') --------------------编程问答-------------------- 还是这个错误,不知道为什么,我是在
LinearLayout里面写background属性
TextView里面写textColor属性 --------------------编程问答-------------------- d --------------------编程问答-------------------- 还没解决啊?  我这里试都没问题的 --------------------编程问答-------------------- ERROR Error:No resource found that matches the given name(at 'background' value '@drawable/white')
就这个错误提示呀,到底怎么回事情呀,是不是color.xml写好了就放在rec\values\下
我就是这么做的,不知道怎么办 --------------------编程问答-------------------- 感觉没啥问题啊,刷新project试试。。 --------------------编程问答-------------------- 刷了,问题依然如故,及其无语 --------------------编程问答-------------------- 重新建一个工程吧,有的时候就是要扯拐 --------------------编程问答-------------------- 要不然你用color标签试一下吧, 反正color和drawable标签都一样

<resources>
    <color name="solid_green">#f0f0</color>
    <color name="solid_yellow">#ffffff00</color>
    
    <drawable name="red">#7f00</drawable>
    <drawable name="blue">#770000ff</drawable>
</resources> --------------------编程问答-------------------- 果然,新建个项目就好了,请问这个算什么问题呀,太诡异了 --------------------编程问答-------------------- 恩 ,看过,是有点怪 --------------------编程问答-------------------- 建立color.xml文件后,要先记得保存。系统自动生成R文件。这样才可用"@drawable/white"。 --------------------编程问答-------------------- 应该是有些时候用的是color属性,有的时候控件只接受drawable属性。drawable可以是color。color只能是color --------------------编程问答-------------------- 暈,這是什麼詭異問題啊,是你的環境設置問題。在ADT中,這些XML文件默認在保存的時候會重新Build project。如果你關閉了這個選項,那麼在你編輯完xml的時候,就需要手動執行 Build project 。這樣它就會在 gen 包下的R.java 文件中生成相應的 map。這樣在其它地方才能找到它。 --------------------编程问答-------------------- 这么简单的问题。。。一堆人在这瞎回答。。。
是因为你的color.xml放的目录不对,要放在Drawable目录下才行
觉得你对APK程序的目录组织完全不清楚,建议去看下SDK DEV GUIDE ~~
在你写这些代码的时候尽量用语法补全的命令好像是alt+/我不太记得了,你查查看,如果有这个资源你用补全就能找到,如果没有这个资源你根本就补不出来 --------------------编程问答-------------------- 在SDK GUIDE的resource这个目录下有详细的关于这些知识的信息 --------------------编程问答--------------------
引用 20 楼 yili_xie 的回复:
这么简单的问题。。。一堆人在这瞎回答。。。
 是因为你的color.xml放的目录不对,要放在Drawable目录下才行
 觉得你对APK程序的目录组织完全不清楚,建议去看下SDK DEV GUIDE ~~
 在你写这些代码的时候尽量用语法补全的命令好像是alt+/我不太记得了,你查查看,如果有这个资源你用补全就能找到,如果没有这个资源你根本就补不出来

color.xml应该放在values下的,他的代码我有试过,没问题.不知道他为什么会报错. --------------------编程问答--------------------
引用 20 楼 yili_xie 的回复:
这么简单的问题。。。一堆人在这瞎回答。。。
是因为你的color.xml放的目录不对,要放在Drawable目录下才行
觉得你对APK程序的目录组织完全不清楚,建议去看下SDK DEV GUIDE ~~
在你写这些代码的时候尽量用语法补全的命令好像是alt+/我不太记得了,你查查看,如果有这个资源你用补全就能找到,如果没有这个资源你根本就补不出来

我也都是放在Values文件夹下的,没啥问题啊 --------------------编程问答-------------------- 我的意思是应该方在Resource目录下,不应该放在SRC里面~~他的问题就出在这里 --------------------编程问答--------------------
引用 24 楼 yili_xie 的回复:
我的意思是应该方在Resource目录下,不应该放在SRC里面~~他的问题就出在这里



。。。。。????? --------------------编程问答-------------------- 一群呆子 --------------------编程问答-------------------- 24喽   ......... 楼主放的位置没错 哦对了 楼主,那个是res 不是rec 呵呵。


26楼 麻烦不要用词那么犀利ok? 知道的就回答 不知道的别说话,别在那藐视所有人谢谢 --------------------编程问答--------------------
围观算了 --------------------编程问答-------------------- 遇到同样的问题,新建了项目也还是不行555 --------------------编程问答-------------------- 应该是目录有问题吧。 --------------------编程问答-------------------- 是不是你建立了color.xml但是主程序中的setContentView(R.layout.main)你依然用的main.xml中的布局?


引用楼主 zhhhhao 的回复:
我在rec下建立了color.xml文件
<?xml version="1.0" encoding="UTF-8"?>
<resources>
<drawable name="darkgray">#808080FF</drawable>
<drawable name="white">#FFFFFFFF</drawable>
</resources>
但是在main.xml中
<Lin……
--------------------编程问答-------------------- android:textColor="@color/white" --------------------编程问答-------------------- android:background="@color/white" --------------------编程问答-------------------- drawable 下面能找到颜色吗? --------------------编程问答-------------------- 谁有andriod的视频 我想学andriod   有的麻烦传我邮箱  boyilove@163.com

   谢谢了! --------------------编程问答-------------------- 看过你的大作,你好犀利啊。哈哈。
引用 20 楼 yili_xie 的回复:
这么简单的问题。。。一堆人在这瞎回答。。。
是因为你的color.xml放的目录不对,要放在Drawable目录下才行
觉得你对APK程序的目录组织完全不清楚,建议去看下SDK DEV GUIDE ~~
在你写这些代码的时候尽量用语法补全的命令好像是alt+/我不太记得了,你查查看,如果有这个资源你用补全就能找到,如果没有这个资源你根本就补不出来
--------------------编程问答-------------------- 这个问题根本就是因为Eclipse自己出的问题,我遇见过好多次就是把错误都改正了,它还是显示报错,很郁闷,我只有把文件考出来,把源文件删了,再复制进去就好了,color.xml 连APIDemo里都是放在Values里,怎么我们所有人都错了?如果错了,我们的东西为什么都没出过错呢?倒是你自己有没有看过呢? --------------------编程问答-------------------- color.xml放哪里都不重要,因为编译过后会在R.java里自动生成
 public static final class drawable {
        public static final int darkgray=0x7f020001;
        public static final int white=0x7f020002;
    }

这种代码 --------------------编程问答-------------------- 我也遇到过,把项目重新导入下就不报错了 --------------------编程问答-------------------- 可以把
<drawable name="darkgray">#808080FF</drawable>
<drawable name="white">#FFFFFFFF</drawable>
直接放在/res/values/strings.xml里面 --------------------编程问答-------------------- 这个是R.Java文件无法及时更新的问题,也就是你建的color.xml没有在r.java中得到指针索引,所以就没办法应用color资源咯。  解决办法查一下r.java的有关更新的文章吧。 --------------------编程问答-------------------- 我也遇到过,重建项目就好,估计是个小bug --------------------编程问答-------------------- 遇到过 多试试就OK了 呵呵 --------------------编程问答-------------------- color.xml确实应该放在values的目录下,你的这个属性也可以直接在strings.xml中在resource中利用<drawable name="black">#00000000</drawable>这个标签进行设置,这是没有问题的! --------------------编程问答-------------------- colors.xml中
<?xml version="1.0" encoding="UTF-8"?>
<resources>
<color name="darkgray">#808080FF</color>
<color name="white">#FFFFFFFF</color>
</resources>

main.xml中
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="@color/white"
    >
这样好像背景就改为白色。 --------------------编程问答-------------------- colors.xml放在values下 --------------------编程问答-------------------- 17楼是正解 --------------------编程问答-------------------- Errors(1 item)
Error generating final archive:
java.io.FileNotFoundException:路径D:\Program Files\Android\android-sdk-windows\AndroidSDK 开发范例大全\Prt3_2\bin、resources.ap_does not exist
是什么问题?????? --------------------编程问答-------------------- 放在什么位置这个问题有什么好纠结的,看下目录结构就OK了啊。
就算不遵守标准规范,也是可以做的,我就一直非主流的这样做了。
主要是

<?xml version="1.0" encoding="UTF-8"?>
<resources>
<color name="darkgray">#808080FF</color>
<color name="white">#FFFFFFFF</color>
</resources>

没什么不对啊,我这样写都OK。楼主重新建个项目试下... --------------------编程问答-------------------- 是不是eclipse开发啊 我遇到建立资源读不出问题当时是因为project中的building atomatically没有选上所以无法自动在R.java中自动新建 --------------------编程问答--------------------
<drawable name="darkgray">#808080FF</drawable>
<drawable name="white">#FFFFFFFF</drawable>
直接放在/res/values/strings.xml里面
--------------------编程问答-------------------- 是colors.xml
不是color.xml --------------------编程问答-------------------- 1.放values下对
2.color6,8位都可以
3.autobuild被关了,手动 ctrl b
4.有时候是eclipse自己有问题,关了再开下,或者clean下
--------------------编程问答-------------------- color.xml   是不是写错了,应该是colors.xml --------------------编程问答-------------------- 54楼和52楼明察秋毫啊!哈哈 --------------------编程问答--------------------
引用 1 楼 fengyu7756 的回复:
似乎白色的编码是#FFFFFF六位的吧!不是八位的
   8位的是带alpha通道的,可以设置亚瑟的透明度,前面两位是alpha分量的值,6位的不带alpha通道。 --------------------编程问答-------------------- 我在rec下建立了color.xml文件
<?xml version="1.0" encoding="UTF-8"?>
<resources>
<drawable name="darkgray">#808080FF</drawable>
<drawable name="white">#FFFFFFFF</drawable>
</resources>
但是在main.xml中
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  android:orientation="vertical"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent"
  android:background="@color/white"//此行报错,反正意思就是@drawable/white找不到,不知道哪出了问题
  > --------------------编程问答-------------------- 看了诸位大神的话
任然一头雾水========= --------------------编程问答-------------------- 我也这样写的  不报错
但是背景还是没改过来 为什么呢
引用 4 楼 zhhhhao 的回复:
--------------------编程问答-------------------- 我也这样写的 不报错
但是背景还是没改过来 为什么呢
引用 5 楼 hust_mse 的回复:
我试了一个,没有问题呀,我用的是你写的color.xml :

color.xml 内容:

XML code

<?xml version="1.0" encoding="utf-8"?>

<resources>
   <drawable name="darkgray">#808080FF </drawable> 
   <drawable name="white">#FFFFFF……
补充:移动开发 ,  Android
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,