为了账号安全,请及时绑定邮箱和手机立即绑定

点击按钮等了一会显示无响应,应该是ui线程被阻塞了

不知道那里出bug了

正在回答

3 回答

解决了,原来是if后面不小心加了个分号

1 回复 有任何疑惑可以回复我~
        /**
	 * 找到一个不是答案,并且是可见的的文字
	 */
	private WordButton findNotAnswerWord() {
		Random random = new Random();
		WordButton buf = null;
		
		/*  这里是老师的代码
		while (true) {
			int index = random.nextInt(MyGridView.COUNTS_WORDS);
			buf = mAllWords.get(index);
			
			if (buf.isIsVisible() && !isTheAnswerWord(buf)) {
				return buf;
			}
		}
		*/
		List<WordButton> btns = findVisibleWordButton();
		if (btns.size() == 0) {
			buf = null;
		} else {
			buf = btns.get(random.nextInt(btns.size()));
		}
		
		return buf;
	}
	
	/**
	 * 找到所有可见的,且不是答案的按钮列表
	 */
	private List<WordButton> findVisibleWordButton() {
		List<WordButton> wordBtns = new ArrayList<WordButton>();
		
		for (WordButton btn : mAllWords) {
			if (btn.isIsVisible() && !isTheAnswerWord(btn)) {
				wordBtns.add(btn);
			}
		}
		
		return wordBtns;
	}

这是我的解决方案,请参考,欢迎指出意见

1 回复 有任何疑惑可以回复我~

问题找到了,应该是 findNotAnswerWord()里的while(true)循环阻塞线程

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Android猜歌游戏是这样炼成的
  • 参与学习       27735    人
  • 解答问题       422    个

手把手教你完成一款猜歌类游戏,向你展示游戏实现的全部细节

进入课程

点击按钮等了一会显示无响应,应该是ui线程被阻塞了

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信