2014-07-23 38 views
0

我所擁有的是兩個自動完成文本視圖,我想要做的是當我開始在其中任何一個人中寫入時我想要的。一個被禁用或隱藏..這就是我都試過了,這裏是我的XML代碼:當我嘗試刪除自動對焦時,我的文本視圖消失

<RelativeLayout 
       android:id="@+id/relative2" 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:layout_alignParentBottom="true" 
       android:layout_alignParentLeft="true" 
       android:layout_alignParentRight="true" 
       android:layout_below="@+id/relative1" 
       android:background="@drawable/down" 
       android:focusableInTouchMode="true" 
       android:focusable="true" > 

        <AutoCompleteTextView android:id="@+id/txtsearch" 
          android:layout_width="fill_parent" 
          android:layout_height="wrap_content" 
          /> 

         <AutoCompleteTextView android:id="@+id/txtsearch2" 
          android:layout_width="fill_parent" 
          android:layout_height="wrap_content" /> 

這是我的Java代碼:

if(textView.isFocusable()==true){// text view is the first one 
         textView2.setVisibility(View.INVISIBLE);// and here is the other one 
         active=1; 
        }else if(textView2.isFocusable()==true){ 
         textView.setVisibility(View.INVISIBLE); 
         active=2; 
        } 

但是當我運行它我得到的是,文本視圖2從一開始就消失了..而我想要的只是當我專注於他們中的任何一個,另一個消失梨..誰能幫助我嗎?

+3

從我的理解什麼是可聚焦的意思是說,如果視圖集中,這不會返回true。如果視圖可以獲得焦點,它將返回true。所以,而不是isFocusable(),你必須使用isFocused() – Opiatefuchs

+1

isFocusable()確定視圖可以聚焦不是IS集中 – erik

+0

@Opiatefuchs同上 – erik

回答

0

你必須禁用你的第一個AutoCompleteTextView的焦點,因爲當你開始你的活動時,它會自動啓動並選擇第一個AutoCompleteTextView。

不知道如何做到這一點,但嘗試:

EditText.setSelected(false); 

或嘗試在XML改變焦點。

說出是否有幫助

+0

我固定焦點問題,但仍然知名度不起作用 – sereen

+0

嘗試isSelected()而不是isFocusable() – odiiil

+0

像這樣:'if(textView2.isSelected()){ textView.setVisibility(View.INVISIBLE); } else { textView.textView.setVisibility(View.VISIBLE); }' – odiiil

相關問題