老师,1:50到2:07时的操作,去掉一个红色的文字,剩下那个红色的还是没有变成白色啊。。
![](http://img1.sycdn.imooc.com/user/5333a0c40001088802000200-80-80.jpg)
2014-11-03
3 回答
还有一种办法将
for (int i = 0; i < mBtnSelectWords.size(); i++) {
mBtnSelectWords.get(i).mViewButton.setTextColor(Color.WHITE);
}
放到 /**
* 初始化已选文字框
*/
private ArrayList<WordButton> initWordSelect()
里面的onClick事件中,即
/**
* 初始化已选文字框
*/
private ArrayList<WordButton> initWordSelect() {
ArrayList<WordButton> data = new ArrayList<WordButton>();
for (int i = 0; i < mCurrentSong.getNameLength(); i++) {
View view = Util.getView(MainActivity.this, R.layout.self_ui_gridview_item);
final WordButton holder = new WordButton();
holder.mViewButton = (Button) view.findViewById(R.id.item_btn);
holder.mViewButton.setTextColor(Color.WHITE);
holder.mViewButton.setText("");
holder.mIsVisiable = false;
holder.mViewButton.setBackgroundResource(R.drawable.game_wordblank);
holder.mViewButton.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
clearTheAnswer(holder);
for (int i = 0; i < mBtnSelectWords.size(); i++) {
mBtnSelectWords.get(i).mViewButton.setTextColor(Color.WHITE);
}
}
});
data.add(holder);
}
return data;
}
你在clearTheAnswer();方法后调用这两个方法就可以了。reCheckTheAnswer();是我自己定义的,跟老师的差不多,只是没有带参数。希望能感帮助你!!
private void reCheckTheAnswer() { // 获得答案状态 int checkResult = checkTheAnswer(); // 检查答案 if (checkResult == STATUS_ANSWER_RIGHT) { // 过关并获得奖励 // Toast.makeText(this, "STATUS_ANSWER_RIGHT", Toast.LENGTH_SHORT).show(); // handlePassEvent(); Intent intent = new Intent(FirstQuestion.this,AnswerRight.class); startActivity(intent); } else if (checkResult == STATUS_ANSWER_WRONG) { // 闪烁文字并提示用户 sparkTheWrods(); } else if (checkResult == STATUS_ANSWER_LACK) { // 设置文字颜色为白色(Normal) firstView.setTextColor(Color.WHITE); firstView2.setTextColor(Color.WHITE); } }
@Override public void onClick(View arg0) { // TODO Auto-generated method stub clearTheAnswer(); checkTheAnswer(); reCheckTheAnswer(); }
举报