我正在使用EditText并使用EditText中的数字作为我的变量。
我也有两个按钮,一个用于将EditText中的数字增加一个,另一个按钮减少一个。
有人可以告诉我使代码成为可能吗?
答案 0 :(得分:5)
使用EditText的xml中的以下行将输入类型设置为数字:
<EditText
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:inputType="number"
android:text="200"
android:id="@+id/editText1"
android:layout_alignParentLeft="true">
</EditText>
在源文件中使用以下代码将数字减少1:
final EditText ed=(EditText)findViewById(R.id.editText1);
Button b1=(Button)findViewById(R.id.button01);
b1.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub
int a=Integer.parseInt(ed.getText().toString());
int b=a-1;
ed.setText(new Integer(b).toString());
}
});
同样在xml中再添加一个按钮,将数字增加一个。
答案 1 :(得分:2)
您需要为每个按钮创建一个on click侦听器,执行以下操作:
final Button button = (Button) findViewById(R.id.button_id);
button.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
EditText editText = (EditText)findViewById(R.id.edit_text);
int newVal = ... //retrieve the previous val and increment it (or decrement it)
editText.setText(newVal, TextView.BufferType.EDITABLE);
}
});
答案 2 :(得分:1)
button.setOnClickListener(new OnCLickListener(){
@Override
public void onClick(View arg0) {
if(arg0.equals(button1))
{
String s = editText.getText().toString();
Integer i = Integer.parseInt(s);
i=++i;
s = s.valueOf(i);
editText.setText(s);
}
if(arg0.equals(button2))
{
//decrement
}
}
})
答案 3 :(得分:1)
只需要使用两个按钮的单击事件,在增加按钮上获取edittextbox中的文本并将其递增并在edittextbox中设置它,同样对减量按钮也是如此,并递减值。