【发布时间】:2012-01-28 13:17:21
【问题描述】:
我有以下具有文本视图和编辑文本的应用程序。当edittext 的值改变时,它会更新一个textview 的内容。现在我希望将值作为整数接收。这是当前的应用程序:
package your.test.two;
import android.app.Activity;
import android.os.Bundle;
import android.text.Editable;
import android.text.TextWatcher;
import android.widget.EditText;
import android.widget.TextView;
public class TesttwoActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
EditText input = (EditText)findViewById(R.id.editText1);
input.addTextChangedListener(new TextWatcher(){
public void afterTextChanged(Editable s){
update();
}
public void beforeTextChanged(CharSequence s, int start, int count, int after){}
public void onTextChanged(CharSequence s, int start, int before, int count){}
});
}
public void update(){
EditText source = (EditText)findViewById(R.id.editText1);
Editable sourceData = source.getText();
TextView destination = (TextView)findViewById(R.id.textView1);
destination.setText(sourceData);
}
}
现在我希望以某种方式将可编辑的 sourceData 转换为整数,以便我可以对其执行 if 语句,如下所示:
if(sourceData>255){
sourceData = 0;
}
我已经在 main.xml 中更改了 edittext 的值,方法是将以下几行添加到 editText1:
android:inputType="number"
android:maxLength="3"
android:numeric="integer"
请给我一些指导方针,告诉我如何做到这一点。一直在谷歌上搜索,但我最终得到的是:
Integer i = Integer.parseInt(edittext.gettext().tostring());
&
Integer i = Integer.valueOf(String s);
而且我还没有完全让那些工作或理解它。请帮忙!? :(
【问题讨论】:
标签: android string integer android-edittext