首选项类布局

时间:2011-05-24 12:26:41

标签: android

在我的应用程序的主要活动中,我需要一个控件,它应该看起来像PreferencesActivity中的ListPreference。我的意思是,2行:标题和当前值以及右侧的向下箭头图标。

我尝试过使用TwoLineListItem:

<TwoLineListItem android:id="@+id/twoLineListItem1"
    android:layout_width="wrap_content" android:layout_height="wrap_content"
    android:onClick="onButtonClick" android:focusable="true"
    android:background="@android:drawable/list_selector_background">
    <TextView android:layout_width="fill_parent"
        android:textAppearance="?android:attr/textAppearanceLarge"
        android:layout_height="wrap_content" android:id="@android:id/text1"
        android:text="Upload into:" />
    <TextView android:layout_below="@android:id/text1"
        android:textAppearance="?android:attr/textAppearanceSmall"
        android:layout_alignLeft="@android:id/text1" android:layout_height="wrap_content"
        android:id="@android:id/text2" android:text="&lt;not set&gt;"
        android:layout_width="wrap_content" />
    <!-- <ImageView android:layout_width="wrap_content" android:layout_alignParentRight="true" 
        android:id="@android:id/selectedIcon" 
        android:src="???"> </ImageView> -->

</TwoLineListItem>

除箭头图标外,一切正常:我找不到系统使用的适当资源。

如何解决这个问题?

或者我应该使用另一个控件而不是TwoLineListItem?

或者甚至尝试将我的活动作为PreferencesActivity实现(我认为我的活动中需要一些EditText控件)?

作为参考,我需要的是左图: http://androinica-serve.s3.amazonaws.com/wp-content/uploads/2010/11/evernote_comp2.png

3 个答案:

答案 0 :(得分:2)

哇,这个问题太老了,我无法相信没有人正确回答大声笑。您正在寻找的布局位于sdk树下:

[android-sdk-root]/platforms/[your-platform]/data/res/layout/preference.xml

你会在这个文件夹中找到这个以及任何其他sdk定义的布局。在res文件夹中钓鱼,看看有什么可用。对不起,这是晚了一年,但是你去了。

答案 1 :(得分:0)

使用此布局并根据您的需要进行修改......

    <?xml version="1.0" encoding="utf-8"?>
<RelativeLayout  xmlns:android="http://schemas.android.com/apk/res/android"
                 android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:background="#FFFFFF">

    <LinearLayout android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="vertical"
    android:layout_alignParentLeft="true">

    <TextView android:layout_width="fill_parent"
         android:text="ggggggggg"
        android:layout_height="wrap_content" android:id="@android:id/text1"

       />
    <TextView android:layout_below="@android:id/text1"
        android:text="ssssssssssss"
         android:layout_height="wrap_content"
        android:id="@android:id/text2" 
        android:layout_width="wrap_content" />
     </LinearLayout>

     <ImageView android:layout_width="wrap_content" 
               android:layout_alignParentRight="true" 
              android:id="@android:id/selectedIcon"
            android:layout_height="wrap_content"
            android:src="@drawable/icon"
             /> 

</RelativeLayout>

答案 2 :(得分:0)

您可以尝试使用@android:drawable / btn_dropdown来获取系统资源并将其设置为背景。