请老师帮忙看下代码,目前的问题是,点击任何的待选文字按钮,都不会隐藏
这是自定义GridView的代码
@Override
public View getView(int postion, View v, ViewGroup arg2) {
final WordButton wb ;
if(null==v){
wb = dataList.get(postion);
wb.setIndex(postion);
v = View.inflate(context,R.layout.word_selected_item, null);
if(wb.getButtonView()==null){
wb.setButtonView((Button) v.findViewById(R.id.btn_word));
wb.getButtonView().setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
//文字按钮点击事件
wordbuttonClick.onWordButtonClickListener(wb);
}
});
}
v.setTag(wb);
}else{
wb = (WordButton) v.getTag();
}
wb.getButtonView().setText(wb.getWordText());
Animation animation = AnimationUtils.loadAnimation(context, R.anim.word_visable_anim);
animation.setStartOffset((index++)*50);
v.startAnimation(animation);
return v;
}点击gridView中的文字按钮事件
/**
* 待选文字按钮点击事件
*/
@Override
public void onWordButtonClickListener(WordButton wordButton) {
for (int i = 0; i < mSelectedWordButtons.size(); i++) {
if (TextUtils.isEmpty(mSelectedWordButtons.get(i).getWordText())) {
// 设置显示被选框文字
mSelectedWordButtons.get(i).setWordText(
wordButton.getWordText());
mSelectedWordButtons.get(i).setVisable(true);
mSelectedWordButtons.get(i).getButtonView()
.setText(wordButton.getWordText());
mSelectedWordButtons.get(i).setIndex(wordButton.getIndex());
// 设置点击的文字对象隐藏
setWordButtonVisable(wordButton,View.INVISIBLE);
MyLogUtil.i(TAG, "被点击隐藏:"+ wordButton.isVisable());//这里打印出false
checkPassbyAnswer();
break;
}
}
}
/**
* 设置文字按钮的显示或不显示
* @param wordButton
* @param visable
*/
private void setWordButtonVisable(WordButton wordButton, int visable) {
wordButton.setVisable(visable == View.VISIBLE ? true : false);
wordButton.getButtonView().setVisibility(visable);
}