中的edittext內容我有一些edittext用於獲取一些整數。 現在我想控制他們的內容。例如如果書面數字介於1和22之間,則做一些事情。控制android
如何從editText獲取文本並將它們轉換爲int來比較它們?
中的edittext內容我有一些edittext用於獲取一些整數。 現在我想控制他們的內容。例如如果書面數字介於1和22之間,則做一些事情。控制android
如何從editText獲取文本並將它們轉換爲int來比較它們?
public void onTextChanged(CharSequence s, int start, int before, int count) {
if(check){
//do stuff
}
}
editText.addTextChangedListener(myTextWatcher);
,並在您myTextWatcher
TextWatcher myTextWatcher= new TextWatcher() {
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
public void onTextChanged(CharSequence s, int start, int before, int count) {
if(Integer.parseInt(s)>1 && Integer.parseInt(s)<=22)
{
// perform you action
}
}
public void afterTextChanged(Editable s) {
};
試試這個您的按鈕onClickListener內:
try {
int number = Integer.parseInt(editText.getText().toString());
if(number >= 1 && number < 22) {
// do smth
}
} catch (NumberFormatException e){
Log.d(LOG_TAG, "Could not convert text into integer");
}
謝謝,但爲什麼你寫數字!= null,數字是整數不布爾? –
檢查空指針總是很好的。 :)但在這種情況下,你是對的。除數字外的任何字符串都是無效的,並會拋出NumberFormatException。我會編輯我的答案。 – Prexx
如果您的按鈕是btn
並editText爲edt
然後做
btn.setOnClickListener(new Button.OnClickListener() {
public void onClick(View v) {
int a;
a=Integer.parseInt(edt.getText().toString());
if(a>1 && a<22)
{
//do something here
}
}
});
謝謝,這是什麼Integer?你的意思是「a」? –
是的。 'a'是整數值@MinaDahesh –
什麼時候該發生?點擊按鈕後? – Prexx
是的!確切地說,我忘記寫它 –