Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
android——等待用户输入_Android_Input - Fatal编程技术网

android——等待用户输入

android——等待用户输入,android,input,Android,Input,我正在创建一个黑桃应用程序,其中有1个人类玩家和3个电脑玩家 我遇到的问题是,播放必须按顺序(顺时针)进行,我需要我的程序等待播放器输入。我不能使用wait()和notify()。我尝试了while循环来检查用户是否选择了一张卡,但是这些卡会阻止程序运行。我尝试过递归方法,在玩家选择一张牌之前不会返回任何东西。这也行不通。那我该怎么办?我卡住了 我的方法是这样的(省去不相关的代码) 您可以尝试添加事件处理程序。每次用户选择卡片时,它都会尝试触发事件。您可以尝试添加事件处理程序。每次用户选择一张卡

我正在创建一个黑桃应用程序,其中有1个人类玩家和3个电脑玩家

我遇到的问题是,播放必须按顺序(顺时针)进行,我需要我的程序等待播放器输入。我不能使用wait()和notify()。我尝试了while循环来检查用户是否选择了一张卡,但是这些卡会阻止程序运行。我尝试过递归方法,在玩家选择一张牌之前不会返回任何东西。这也行不通。那我该怎么办?我卡住了

我的方法是这样的(省去不相关的代码)


您可以尝试添加事件处理程序。每次用户选择卡片时,它都会尝试触发事件。

您可以尝试添加事件处理程序。每次用户选择一张卡时,它都会尝试触发一个事件。

试试这个

创建一个线程,并在该威胁调用中
sleep(1000)

试试这个


创建一个线程,并在该威胁调用中
sleep(1000)

也许你应该稍微改变一下游戏控制器。不要等待任何东西,让你的程序不断地绘制屏幕。如果用户未输入任何内容,则始终绘制同一屏幕

一旦他按下一个键(或点击一张卡片或任何你有的事件),只需修改paint方法的参数(要绘制的屏幕)。因此,您将分别绘制屏幕和输入处理。这是一种叫做MVC模型的常用技术

也许这会有所帮助(这是我的游戏创建博客,其中的链接也很有用):

你不需要把所有的游戏都改编成这里描述的游戏,只需要把输入和绘画分开的技术。作为一种通用技术,您不应该让输入决定绘画


希望能有帮助。不要犹豫,请求进一步的帮助。

也许你应该改变一下游戏控制器。不要等待任何东西,让你的程序不断地绘制屏幕。如果用户未输入任何内容,则始终绘制同一屏幕

一旦他按下一个键(或点击一张卡片或任何你有的事件),只需修改paint方法的参数(要绘制的屏幕)。因此,您将分别绘制屏幕和输入处理。这是一种叫做MVC模型的常用技术

也许这会有所帮助(这是我的游戏创建博客,其中的链接也很有用):

你不需要把所有的游戏都改编成这里描述的游戏,只需要把输入和绘画分开的技术。作为一种通用技术,您不应该让输入决定绘画


希望能有帮助。请不要犹豫,请求进一步的帮助。

看来这就是我正在做的。我几乎是在用布尔函数和处理程序重新编写代码来完成这项工作。看来这就是我在做的。我几乎是在用布尔函数和处理程序重新编写代码来完成这项工作。谢谢。
private void game(){
   while(there are more tricks to be played)
      while(each player has not played){
         if(human turn)
            get input from player
         else
            computer plays
      }
}