我有一个用于加载屏幕的aSyncTask。在我的doBackground中,我有
mCampusMap = (CampusMap) findViewById(R.id.CampusMap);
mCampusMap.setVisibility(View.VISIBLE);
启动我的openGL视图,需要5秒左右才能加载。
在Droid上一切正常,但在Nexus S上我得到以下错误:
10-05 17:56:02.906: ERROR/AndroidRuntime(876): Caused by: android.view.ViewRoot$CalledFromWrongThreadException: Only the original thread that created a view hierarchy can touch its views.
答案 0 :(得分:0)
如果在Activity类中定义AsyncTask类,请尝试以下方法:
runOnUiThread(new Runnable() {
public void run() {
((CampusMap) findViewById(R.id.CampusMap)).setVisibility(View.VISIBLE);
}
});