2017-02-22 68 views

回答

0

這聽起來像所有你需要的是一個DatePicker,以便設置爲spinner

<DatePicker 
    ... 
    android:datePickerMode="spinner" 
    android:calendarViewShown="false" /> 
+0

日期選擇器是一個aditional的功能。 –

+0

這是否意味着註釋什麼?它與「它不知道我想要的功能名稱」有關嗎? –

0

您可以使用TextWatcher類模式工作再上一個的EditText內的文本變化通知。

EditText mDayEditText; 
EditText mMonthEditText; 
EditText mYearEditText; 

TextWatcher dayTextWatcher = new TextWatcher() { 
    @Override 
    public void beforeTextChanged(CharSequence s, int start, int count, int after) { 
     // Do nothing... 
    } 

    @Override 
    public void onTextChanged(CharSequence s, int start, int before, int count) { 
     if (s.length() == 2) { 
      mMonthEditText.requestFocus(); 
     } 
    } 

    @Override 
    public void afterTextChanged(Editable s) { 
     // Do nothing... 
    } 
}; 

TextWatcher monthTextWatcher = new TextWatcher() { 
    @Override 
    public void beforeTextChanged(CharSequence s, int start, int count, int after) { 
     // Do nothing... 
    } 

    @Override 
    public void onTextChanged(CharSequence s, int start, int before, int count) { 
     if (s.length() == 2) { 
      mYearEditText.requestFocus(); 
     } 
    } 

    @Override 
    public void afterTextChanged(Editable s) { 
     // Do nothing... 
    } 
}; 

@Override 
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 
    super.onCreateView(inflater, container, savedInstanceState); 
    View v = inflater.inflate(R.layout.your_fragment, container, false); 

    mDayEditText = (EditText) v.findViewById(R.id.text_view_1); 
    mMonthEditText = (EditText) v.findViewById(R.id.text_view_2); 
    mYearEditText = (EditText) v.findViewById(R.id.text_view_3); 

    mDayEditText.addTextChangedListener(dayTextWatcher); 
    mMonthEditText.addTextChangedListener(monthTextWatcher); 
} 
+0

這是一個簡單的解決方案,如果他有3個不同的領域,但他寫的,它是由於某種原因,一個編輯文本。你可以縮短甚至更多 - 給所有字段相同的文字觀察者,做((EditText上)getTag())requestFocus()方法。並將下一個字段設置爲每個標記 –

相關問題