2011-09-28 47 views
0

是否可以禁用DatePicker中的字段版本?確實 當我觸摸DatePicker中的可編輯框時,出現鍵盤 ...而我不想要這個!日期選取器版本字段

有人有一個想法?

非常感謝您的回覆:)

+0

這是一個日期選擇器* * - 讓你挑* *日期...你嘗試使用它只是爲了*顯示*日期? –

+0

不,我的意思是說,我可以通過更改日期 - 目前在日期選擇器註冊,但是當我在的DatePicker的編輯框碰我不想要顯示的鍵盤... – AndroidDev

+0

好了,你只需要編輯通過觸摸。這不像說你不希望它是可編輯的(這是我認爲你的意思是「版」)。我建議你編輯這個問題,使其更清晰。 –

回答

1

葉,我得到了我們需要做的answer..the的事情是......

DatePicker m_dtPicker = (DatePicker) findViewById(R.id.dt_picker); 
    setDisabledTextViews(m_dtPicker); 


    private void setDisabledTextViews(ViewGroup dp) 
    { 
     for (int x = 0, n = dp.getChildCount(); x < n; x++) 
     { 
      View v = dp.getChildAt(x); 

      if (v instanceof TextView) 
      { 
       v.setEnabled(false); 
      } 
      else if (v instanceof ViewGroup) 
      { 
       setDisabledTextViews((ViewGroup)v); 
      } 
     } 
    } 
0

這不應該做的。 DatePicker的有專門的功能,讓用戶方便的選擇,而不是竊聽/保持+/-

你所要實現的目標是針對iOS的機械手這雖然看起來不錯,但確實是在Android不方便。

3

這其實是很容易的。只需使用

datePicker.setDescendantFocusability(DatePicker.FOCUS_BLOCK_DESCENDANTS); 

當它們被輕敲並且軟輸入鍵盤不應出現時,NumberPickers將永遠不會收到焦點。我一直在API級別7上使用這種方法,並取得了成功。

相關問題