2013-12-21 72 views
0

我剛剛看到下面的link,它適合我的需求,我正在努力尋找與我的listview相同的工作。希望有人能擺脫我在此設置爲android時無法看到單選按鈕:choiceMode =「singleChoice」

這一些輕是什麼環節有:

android:choiceMode="singleChoice"設置爲listview只設置單一的單選按鈕選擇

現在我有類似上述列表視圖東西但有一些圖像和文字瀏覽,沒有什麼特別的。

這裏是我的列表視圖:

<LinearLayout 
xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:layout_width="fill_parent" 
android:layout_height="match_parent" 
android:orientation="vertical" 
android:background ="#CCCCCC"> 

    <ListView 
     android:id="@+id/list" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:divider="#3366CC" 
     android:dividerHeight="2dp" 
     android:choiceMode="singleChoice"/> 
    <RelativeLayout 
     android:layout_width="match_parent" 
     android:layout_height="48dp" 
     android:layout_alignParentBottom="true"> 
     <View 
      android:layout_width="match_parent" 
      android:layout_height="1dip" 
      android:layout_marginLeft="3dip" 
      android:layout_marginRight="3dip" 
      android:background="?android:attr/dividerVertical" 
      android:layout_alignParentTop="true"/> 
     <View 
      android:id="@+id/divider" 
      android:layout_width="1dip" 
      android:layout_height="wrap_content" 
      android:layout_alignParentTop="true" 
      android:layout_alignParentBottom="true" 
      android:background="?android:attr/dividerVertical" 
      android:layout_centerHorizontal="true"/> 
     <Button 
      android:id="@+id/btnPrevious" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignParentLeft="true" 
      android:layout_alignParentTop="true" 
      android:layout_toLeftOf="@id/divider" 
      android:background="@drawable/buttons" 
      android:text="Previous" 
      android:layout_alignParentBottom="true" 
      android:textSize="20sp" 
      android:textColor="#4285f4"/> 
     <Button 
      android:id="@+id/btnNext" 
      android:layout_width="wrap_content" 
      android:layout_height="match_parent" 
      android:layout_alignParentRight="true" 
      android:layout_alignParentTop="true" 
      android:background="@drawable/buttons" 
      android:text="Next" 
      android:layout_alignParentBottom="true" 
      android:layout_toRightOf="@id/divider" 
      android:textSize="20sp" 
      android:textColor="#4285f4"/> 
    </RelativeLayout>   
</LinearLayout> 

現在我的問題是我不能讓他們旁邊的單選按鈕,如圖上面的鏈接。

這裏是我的row.xml

<?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="wrap_content"> 

    <LinearLayout 
      android:layout_width="wrap_content" 
      android:layout_height="match_parent" 
      android:orientation="vertical"> 
    <ImageView 
     android:id="@+id/photo" 
     android:layout_width="150dip" 
     android:layout_height="100dip" 
     android:paddingRight="15dp" 
     android:paddingLeft="15dp"/> 
    </LinearLayout> 
    <RelativeLayout 
     android:layout_width="fill_parent" 
      android:layout_height="match_parent" 
      android:orientation="vertical" 
android:layout_marginLeft="160dp" 
android:layout_marginTop="10dp" 
android:descendantFocusability="blocksDescendants"> 
    <TextView android:id="@+id/name" 
     android:textSize="14sp" 
     android:textStyle="bold" 
     android:textColor="#000000" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content"/> 
    <TextView android:id="@+id/itemDescription" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_below="@id/name" 
     android:focusable="false"/> 
    <TextView android:id="@+id/price" 
     android:textSize="19sp" 
     android:textStyle="bold" 
     android:textColor="#003399" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_below="@id/itemDescription"/> 
</RelativeLayout> 
</RelativeLayout> 

回答

1

您鏈接到應用android.R.layout.simple_list_item_single_choice使用行的樣品。你不是。單選按鈕顯示,因爲樣本使用android.R.layout.simple_list_item_single_choicesingleChoiceListView。單獨的singleChoice不添加單選按鈕。

您需要創建(或發現)爲您的行自定義View,要麼直接使用RadioButton或使用CheckedTextView實現Checkable界面和它有一個合適的單選按鈕。

例如,this blog post shows a CheckedLinearLayout,它利用你提供給提供Checkable接口與singleChoiceListView工作一個CheckedTextView

0

如果你想從列表視圖中的所有條目中選擇單行,那麼不要使用複選框。只使用單選按鈕。不要使用singlechoice listview,因爲它不支持自定義行,它將只支持android默認佈局,即android.R.layout.simple_list_item_single_choice。所以它會更好地在每一行上用單選按鈕創建自定義列表視圖。並通過您的代碼嘗試管理單個選擇。我認爲這會幫助你更好地工作。如果你需要更多的幫助,請告訴我。