我写了一个记忆游戏应用程序,我有一个名为" OnImageButtonClick"我在布局中插入每个imageButton的onClick属性。 当你点击它应该改变它的图像的图像,但真正发生的是,只有在函数结束后,图像才会真正改变。
{% for itemOrg in listOrganismeFav %}
<td>
{% for itemChamp in listChampTableOrgGest %}
<a href="#">{{ itemOrg[itemChamp.champ] }}</a>
{% endfor %}
</td>
{% endfor %}
问题是PickCard在图像实际发生变化之前发生。
答案 0 :(得分:0)
试试这个,有点复杂,但可能有效:
创建一个Asynctask并执行第一个方法(更改图像资源),然后执行第一个方法,然后onPostExecute方法调用PickCard()。
以下是一些如何执行此操作的文档: https://developer.android.com/reference/android/os/AsyncTask.html
public class ImgBtnClick extends AsyncTask<ImageButton, Void, Void> {
public ImgBtnClick (Context contexts) {
context = contexts;
}
@Override
protected void onPreExecute() {
//Insert Here the code to change the Image resource
/*
int cardIndex = Integer.parseInt(v.getTag().toString());
ImageButton card = (ImageButton)v;
Resources resources = this.getResources();
int imageId = resources.getIdentifier(imageArr[cardIndex-1], "drawable", this.getPackageName());
card.setImageResource(imageId);
if(isFirst) {
pickedCards[0] = card;
}
else {
pickedCards[1] = card;
}
*/
}
@Override
protected void onPostExecute(String[] result) {
PickCard()
}
}