XML文件中的ListView项颜色

时间:2014-01-27 07:26:02

标签: android listview colors textview xamarin

我在以下链接中使用Xamarin示例: Part 3 - Customizing a ListView's Appearance

示例代码来自以下文件:CustomRowView.zip

以下是我正在运行的代码的屏幕截图:Emulator screenshot

ListView项目的背景颜色为黄色。

我可以帮助将此颜色更改为默认颜色,还是选择此颜色? 我不知道在代码中哪里可以找到它。我查看了XML布局文件,但找不到正确的项目。

在RelativeLayout中,引用了以下内容:

android:background="@drawable/CustomSelector"

这是文件的内容:

    <?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
  <item android:state_pressed="false"         
        android:state_selected="false"         
        android:drawable="@color/cellback" />
  <item android:state_pressed="true" >
    <shape>
      <gradient
      android:startColor="#E88A93"
      android:endColor="#E88A93"
      android:angle="270" />
    </shape>
  </item>

  <item android:state_selected="true" 
        android:state_pressed="false"         
        android:drawable="@color/cellback" />
</selector>

此代码是否与问题相关?

提前致谢

4 个答案:

答案 0 :(得分:1)

“黄色背景色”是自定义列表视图项的背景色。在您引用的toturial中,您可以在“/Resources/Layout/CustomView.axml”中找到它:

<RelativeLayout  xmlns:android="http://schemas.android.com/apk/res/android"
   android:layout_width="fill_parent"
   android:layout_height="wrap_content"
   android:background="#FFDAFF7F"
   android:padding="8dp">
 <LinearLayout android:id="@+id/Text"
   android:orientation="vertical"

...    
...

   android:layout_height="48dp"
   android:padding="5dp"
   android:src="@drawable/icon"
   android:layout_alignParentRight="true"
   />
</RelativeLayout >

android:background="#FFDAFF7F"是您要修改的内容。

答案 1 :(得分:0)

您的ListView每行使用CustomView.axml。在CustomView.axml父元素(RelativeLayout)中使用来自android:background属性中的Drawable文件夹的CustomSelector.xml。在此文件中,您可以根据需要更改三种状态(按下,按下和选择,无)的颜色。

答案 2 :(得分:0)

在您的值文件中创建一个color.xml并定义您的颜色(您想要设置为listview ite的颜色)

<?xml version="1.0" encoding="utf-8"?>
 <resources>
    <color name="magenta">#FF00FF</color>
    <color name="yellow">#FFFF00</color>
    <color name="light_grey">#ffb9b8bb</color>
</resources>

然后在自定义选择器中使用这些颜色

<?xml version="1.0" encoding="utf-8"?>
 <selector xmlns:android="http://schemas.android.com/apk/res/android">

     <item android:drawable="@color/light_grey" android:state_pressed="false"        android:state_selected="false"/>
     <item android:state_pressed="true"><shape>
        <gradient android:angle="270" android:endColor="#E88A93" android:startColor="#E88A93" />
      </shape></item>
   <item android:drawable="@color/light_grey" android:state_pressed="false"  android:state_selected="true"/>

  </selector>

答案 3 :(得分:0)

我从来没有把它变黄,这应该是在按下列表中的项目之后。 (我将您的样本更改为黄色state_pressed=true。 TKS SELI

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">

  <item android:drawable="@color/light_grey" android:state_pressed="false"        android:state_selected="false"/>
  <item android:state_pressed="true">
    <shape>
      <gradient android:angle="270" android:endColor="#E88A93" android:startColor="#E88A93" />
    </shape>
  </item>
  <item android:drawable="@color/yellow" android:state_pressed="false"  android:state_selected="true"/>

</selector>