java - 如何让android程序等待两个按钮被按下?

标签 java android button

我有一个按钮b1、b2等的列表。每个按钮都有一个onclick方法,该方法将一个数字添加到一个数组列表。我认为添加行

while(myArrayList.size()<2){}

会让程序等待,直到单击两个按钮,但屏幕会变黑。为什么会发生这种情况?如何解决?

最佳答案

您正在 UI 线程上执行 while 循环,这就是您的屏幕没有响应的原因。 我想说,检查 onClick 方法的数组大小,然后在满足条件时运行,运行您正在等待的方法。像这样的事情:

@Override
public void onClick(View v) {
    switch(v.getId()){
        case R.id.b1:
            list.add(someNumber);
            break;
        case R.id.b2:
            list.add(otherNumber);
            break;
    }
    if (list.size() == 2) {
        yourWaitingMethod();
    }
}

关于java - 如何让android程序等待两个按钮被按下?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25316903/

相关文章:

java - 在 Java 中重置定时器

android - 处理 Android M 应用程序链接中的特定路由

c# - 如何将 .png 文件用作 Windows 窗体中的按钮? (在 C#-visual studio 2013 中)

java - 我的 Android 应用程序崩溃,触摸按钮无法正常工作

java - 比较看起来相同但不相同的本地化字符串的更好方法是什么

Java:计算随机变量的输出?

android - Android 上的 VPN 客户端 : questions about VPN client and use of hidden APIs

android - 如何从通知中打开 fragment

css - 单击按钮时显示 ul

jquery - jquery slider 上按钮的 z-index