Android:主题ContextMenu项目选择

时间:2012-12-20 22:23:24

标签: android themes contextmenu selector

如何在上下文菜单中设置列表选择器的主题?对于列表视图,我使用了这里描述的方式:

http://brainflush.wordpress.com/2009/03/15/understanding-android-themes-and-styles/

所以我将创建的样式分配给我的主题:

<style name="Theme...." parent="@android:style/Theme.Light">
    <item name="android:listViewStyle">@style/ListView</item>
</style>

1 个答案:

答案 0 :(得分:0)

尝试Override context menu colors in Android,看看是否有帮助。它表示你不能覆盖标准的上下文菜单选择器,而是继续为长按提供上下文代码。

要主题任何列表项我在列表xml上分配背景,例如android:background =“@ layout / customshape,custon shape就像:

<?xml version="1.0" encoding="UTF-8"?> 
<shape 
xmlns:android="http://schemas.android.com/apk/res/android" 
android:shape="rectangle"> 
<gradient android:startColor="@color/white" 
      android:endColor="@color/light_grey_background" 
      android:angle="270"/> 
<corners 
android:bottomRightRadius="7dp" 
android:bottomLeftRadius="7dp" 
android:topLeftRadius="7dp" 
android:topRightRadius="7dp"/> 
</shape>

我从列表项.xml中调用的内容如下:

 <LinearLayout
 xmlns:android="http://schemas.android.com/apk/res/android"
 android:paddingTop="2dip"
 android:paddingBottom="2dip"
 android:layout_width="fill_parent"
 android:layout_height="wrap_content"
 android:orientation="vertical"
 >

 <LinearLayout
     android:layout_width="match_parent"
     android:layout_height="wrap_content"
     android:background="@layout/customrecipeshape"
     android:orientation="horizontal" >

 <ImageView 
     android:id="@+id/listicon" 
     android:layout_width="34px" 
     android:layout_height="wrap_content" 
     android:src="@drawable/icon_red" 
 />
 <TextView android:id="@+id/thing1"
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:textColor="@color/black"
     android:textAppearance="?android:attr/textAppearanceSmall"/>    


 <TextView android:id="@+id/thing2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginLeft="20px" 
        android:textColor="@color/grey21"
        android:textAppearance="?android:attr/textAppearanceSmall"/>
 <TextView 
     android:id="@+id/thing3"

     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:textColor="@color/grey21"
     android:textAppearance="?android:attr/textAppearanceSmall"
     />




  </LinearLayout>      

如上所述:https://groups.google.com/forum/?fromgroups=#!topic/android-developers/GY9DFX2H-Bc

您无法覆盖自定义上下文菜单,但您可以使用列表视图和警报对话框创建自己的菜单。