讓EditText不能自動獲取焦點

在activity中放置了1個或1個以上的EditText,進入該activity的時候第一個EditText會接收焦點,我希望裏面所有的EditText默認是不接收焦點的,該怎麼做呢?

方法1:
在第一個EditText前面添加一個LinearLayout,並且一定要請求獲得焦點,否則無效。網上很多都說到要添加一個LinearLayout,但是沒有強調要使用
 <requestFocus />這句,發現不使用這句其實是沒有效果的。
<LinearLayout
        android:focusable="true" android:focusableInTouchMode="true"
        android:layout_width="0px" android:layout_height="0px">
        <requestFocus />
    </LinearLayout>

然後,所有的EditText,裏面都不要再使用<requestFocus />。

方法2:

在EditText的父級控件中找一個,設置成

   android:focusable="true"     android:focusableInTouchMode="true"

這樣,就把EditText默認的行爲截斷了!

<LinearLayout 
        style="@style/FillWrapWidgetStyle"
        android:orientation="vertical"
        android:background="@color/black"
        android:gravity="center_horizontal"
        
        android:focusable="true"  
        android:focusableInTouchMode="true"
        >
        <ImageView
            android:id="@+id/logo"
            style="@style/WrapContentWidgetStyle"
            android:background="@drawable/dream_dictionary_logo"
          />
        <RelativeLayout 
            style="@style/FillWrapWidgetStyle"
            android:background="@drawable/searchbar_bg"
            android:gravity="center_vertical"
            >
            <EditText
                android:id="@+id/searchEditText"
               style="@style/WrapContentWidgetStyle"
               android:background="@null"
               android:hint="Search"
               android:layout_marginLeft="40dp"
               android:singleLine="true"
             />
            
        </RelativeLayout>
        
    </LinearLayout> 




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章