gpt4 book ai didi

java - Android/Java 重复按钮点击

转载 作者:搜寻专家 更新时间:2023-11-01 09:00:19 24 4
gpt4 key购买 nike

我正在编写我的第一个 Android 应用程序,并且正在尝试编写一个应用程序,您只需单击一个按钮即可显示一条消息,并且可以根据需要多次执行此操作。到目前为止,我有:

public class MyProject extends Activity
{
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
final TextView tv = new TextView(this);
Button startButton = (Button) findViewById(R.id.startbutton);
startButton.setOnClickListener(new View.OnClickListener() {
public void onClick(View view) {
tv.setText("Hello World!");
setContentView(tv);
Handler handler = new Handler();
handler.postDelayed(new Runnable() {
public void run() {setContentView(R.layout.main);}}, 2000);
}
});
}
}

但是,当我返回主屏幕并再次单击该按钮时,以这种方式进行...没有任何反应。如何获得重复的按钮点击以重复该行为?

最佳答案

您的示例非常简单,据我了解,不需要多线程。

您只需初始化一次布局,之后您就可以更新单个 View 的内容。

所以...这将在每次单击按钮时设置“hello world”字符串,您不会注意到任何差异,因为字符串始终相同 :D

public class MyProject extends Activity
{
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
// this is needed one time only
setContentView(R.layout.main);

// add your textview in xml
final TextView tv = (TextView) findViewById(R.id.textView);
final Button startButton = (Button) findViewById(R.id.startbutton);

startButton.setOnClickListener(new View.OnClickListener() {
public void onClick(View view) {
tv.setText("Hello World!");
}
}
}
}

为了做一些更有趣的事情,你可以设置一个计数器来在每次点击时更新,这样 textview 的变化会很明显更有趣!!

int i = 0;
startButton.setOnClickListener(new View.OnClickListener() {
public void onClick(View view) {
tv.setText("you have reached " + i);
i++;
}
}

关于java - Android/Java 重复按钮点击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15562405/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com