seprateスレッドからListViewにアクセスして設定したいのですが、そのオブジェクトのスコープが新しいスレッドにありません...その解決策は何ですか?サーバからデータを取得し、seprateスレッドでリストビューを表示
ListView FilesListView;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
FilesListView= (ListView)findViewById(R.id.remoteFilesListView);
new Thread (new Runnable() {
@Override
public void run() {
// fetch data from server…
String xmlFormServer = Worker.getXmlresponse();
Log.d("Response from Serever", xmlFormServer;
// FilesListView object of Listview is not accessable in this thread to populate data…
}
}).start();
}
理想的には、Androidでやりたいスレッド操作のためのAsyncTaskを使用しています。それに最適化されたITとUIを更新するためのUI Threadメソッドを提供します。プラスこの方法では、あなたのアプリをクラッシュさせるバックグラウンドスレッドからUIを更新しようとしています。 –