我一直在这个论坛上搜索,但我找不到我的问题的任何答案。我有以下问题:
我有一个图像视图和两个文本,我想在加载下一个活动之前更改选择的颜色以显示视觉反馈。
@Override
public void onClick(View v) {
openFormOverviewButton.setColorFilter(0x22FFFFFF, Mode.SRC_ATOP);
openFormOverviewTitle.setTextColor(0xFF00851B);
openFormOverviewText.setTextColor(0xFF00851B);
Intent tki = new Intent();
tki.setClass(getApplication(), DataCollectorFormOverviewActivity.class);
startActivity(tki);
}
我希望更改按钮和文本,然后开始新的活动。但是,文本没有改变,活动开始。如果我在 UI 线程 (runOnUiThread(new Runnable() {...}) 上调用可运行对象中的三行,那么更改会在活动启动之前应用。这实际上很奇怪,因为 onClick 方法是在主线程又名 UI 线程。
这是否意味着对 UI 线程的更改不会立即在 UI 线程上执行?还是我做错了什么?
最好的,亚当