我有这个按钮:
<Button
android:id="@+id/button1"
android:layout_width="130dp"
android:layout_height="35dp"
android:layout_alignRight="@+id/editText2"
android:layout_alignTop="@+id/imageView1"
android:layout_marginTop="23dp"
android:text="Increase" />
如何制作它,以便每次单击按钮时,textview中的计数都会增加,例如,如果数字是0,那么您单击按钮会更改为1?
答案 0 :(得分:2)
将监听器附加到按钮以处理click事件。
单击它时,递增计数器变量并更新textview的文本。
提示:使用String.valueOf(myCounter);
将int转换为String
答案 1 :(得分:2)
您必须通过Button的setOnClickListener
方法向Button添加一个侦听器,并传入OnClickListener
个对象。
Button btn = (Button) findViewById(R.id.button1);
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
int i = Integer.parseInt(myTextView.getText().toString());
myTextView.setText(String.valueOf(i + 1));
}
});
其中myTextView
是带有计数器的TextView,通过调用findViewById
获得。确保将String传递给setText
,否则将调用带有integer参数的方法重载,它具有不同的含义(整数表示资源ID)。
答案 2 :(得分:0)
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Increase"
android:onClick="inc"/>
<TextView
android:id="@+id/text"
..../>
并在您的活动中:
public void inc(View v){
TextView t = (TextView) findViewById(R.id.text);
t.setText(String.valueOf(Integer.parseInt(t.getText)+1));
}