別のスレッドから ListView を表示しようとしていますが、ここで何が欠けているのかわかりません。これは handleMessage() アプローチです。タイマーと runOnUiThread() スキームも作成しようとしましたが、何も表示されません。このアクティビティ全体を再度呼び出すだけで機能するため、リストビュー自体に問題がないことは確かです(ただし、そのデザインは使用したくありません)。ヒントをいただければ幸いです...
public void ShowList(String[] list)
{
for (String val : list)
Log.d(TAG, "ShowList: list = " +val);
// Set up the list view
GuideAdapter = new ArrayAdapter<String>(this, R.layout.main, android.R.id.list, list);
setListAdapter(GuideAdapter);
Log.d(TAG, "ShowList: Created setListAdapter...");
// Get an object for the list
ListView listView = getListView();
listView.setTextFilterEnabled(true);
listView.setCacheColorHint(0);
listView.setOnItemClickListener(new OnItemClickListener()
{
public void onItemClick(AdapterView<?> parent, View view, int position, long id)
{
}
});
}
Handler mHandler = new Handler(new Handler.Callback()
{
@Override
public boolean handleMessage(Message msg)
{
if (msg.what == STATE_GUIDE) {
ShowList(ChannelList);
}
return true;
}
});
public class MyThread extends Thread
{
public MyThread() {
}
public void run() {
...
mHandler.sendEmptyMessageDelayed(STATE_GUIDE, 0);
}
}