2014-09-29 73 views
3

我有一個自定義導航抽屜與幾個TextViews。這裏是佈局:Android自定義導航抽屜背景列表滾動/集中

<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/drawer_layout" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

    <!-- The main content view --> 
    <FrameLayout 
     android:id="@+id/content_frame" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" /> 
    <!-- The navigation drawer --> 

    <LinearLayout 
     android:layout_width="240dp" 
     android:layout_height="match_parent" 
     android:orientation="vertical" 
     android:background="@color/White" 
     android:layout_gravity="start"> 

<TextView 
      android:layout_width="fill_parent" 
      android:layout_height="?android:attr/listPreferredItemHeightSmall" 
      android:textStyle="bold|italic" 
      android:gravity="center_vertical" 
      android:layout_marginLeft="5dp" 
      android:layout_marginStart="5dp" 
      android:textAppearance="?android:attr/textAppearanceMedium" 
      android:text="First Item" /> 

     <View 
      android:layout_width="fill_parent" 
      android:layout_height="3dp" 
      android:background="@color/gplus_color_1" /> 

     <TextView 
      android:layout_width="fill_parent" 
      android:layout_height="?android:attr/listPreferredItemHeightSmall" 
      android:textAppearance="?android:attr/textAppearanceListItemSmall" 
      android:text="Second Item" 
      android:gravity="center_vertical" 
      android:layout_marginLeft="15dp" 
      android:layout_marginStart="15dp" 
      android:id="@+id/second" /> 


    </LinearLayout> 

</android.support.v4.widget.DrawerLayout> 

的問題是,如果我不爲TextView分配任何onClick(),然後使觸摸反映在ListView這是在後臺。假設第二個TextView我分配了一個onClick監聽器,但是第一個TextView我沒有,當我觸及第一個TextView時,抽屜後面的列表項被選中,但不是第二個。抽屜打開時,我如何將注意力集中在導航抽屜項目上?

回答

5

向您的LinearLayout添加android:clickable =「true」。 它停止對焦到背景列表。

<LinearLayout 
    android:layout_width="240dp" 
    android:layout_height="match_parent" 
    android:clickable="true" 
    android:orientation="vertical" 
    android:background="@color/White" 
    android:layout_gravity="start"> 
+0

不錯。完美簡潔的答案 - 爲我工作! – gts101 2015-06-12 06:48:06