2011-07-15 34 views
1

我正在創建一個應用程序,在這個應用程序中EditText-Views沒有一個獲得焦點。只有當用戶直接指向其中的一個時,纔會發生這種情況。 我設法通過虛擬EditText-Item防止焦點增益onCreate()和onResume()。 但在我的應用程序中,我使用與滾動視圖結合的選項卡。 當用戶第一次改變到另一個標籤時,似乎沒有聚焦增益(完美!),但只要一個切換回另一個標籤,我的EditText-View獲得焦點...避免第一個視圖(EditText)在Tab-Change上的焦點增益

我試過使用tabHost的XY事件,但沒有真正得到它的權利... 我感謝任何幫助!在此先感謝, fbtb 此代碼僅適用於第一個Tabchange ...怎麼可能?敬酒是正確永諾表示,但僅着眼於第一Tabchange設置......我不明白它在所有:(

tabHost.setOnTabChangedListener(new OnTabChangeListener() { 
      @Override 
      public void onTabChanged(String bezeichner) { 
       Toast.makeText(getBaseContext(),"This is the Tab: " + tabHost.getCurrentTab() +" der String: "+bezeichner, Toast.LENGTH_LONG).show(); 
       if (tabHost.getCurrentTab() == 0) 
        goBtn.requestFocus(); 

       if (tabHost.getCurrentTab() == 1) 
        label_maxvolume.requestFocus(); 
       } 
     }); 

回答

0

使用此功能可以從任何EDITTEXT

final EditText eText = (EditText) findViewById(R.id.searchbox); 
     InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE); 
     imm.hideSoftInputFromWindow(eText.getWindowToken(), 0); 
移除焦點

這將基本上隱藏鍵盤,只要你想或任何你想隱藏的地方。

+0

謝謝你的回答!這是我的問題的一部分。問題是,EditText失去它的內容,當beeing集中,我只想這發生在用戶觸摸該字段時,而不是當他改變標籤頁時。 – fbtb

+0

有時會說話有幫助;) 我改變了事件我的EditText從「onFocusChanged」監聽到「onTouch」 和everthing正常工作,儘管我認爲我一開始嘗試它的方式也應該起作用... – fbtb

+0

ok it it並沒有真正的幫助,因爲現在EditText沒有獲得焦點,當我觸摸它,也沒有打開鍵盤,但我認爲我可以解決這個問題;) – fbtb