私はたくさん質問されていることを知っていますが、私はこれを動作させることができません。リフレッシュ一覧表示
私は、ListViewコントロールを持っていると私はそれを更新しようとしている。..
編集:すべてのコード、たぶん私はどこか間違っていました。
public class TestActivity extends Activity {
private TasksDataSource dataSource;
private ArrayAdapter<Task> adapter;
private ListView list;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
list = (ListView) findViewById(R.id.list);
Button btnAdd = (Button) findViewById(R.id.btnAdd);
Button btnRefresh = (Button) findViewById(R.id.btnRefresh);
Button btnClear = (Button) findViewById(R.id.btnClear);
dataSource = new TasksDataSource(this);
dataSource.open();
List<Task> tasks = dataSource.getAllTasks();
adapter = new ArrayAdapter<Task>(this, android.R.layout.simple_list_item_1, tasks);
list.setAdapter(adapter);
btnAdd.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub
Intent startAddIntent = new Intent(TestActivity.this, AddActivity.class);
TestActivity.this.startActivity(startAddIntent);
}
});
btnRefresh.setOnClickListener(new View.OnClickListener() {
public void onClick(View arg0) {
// TODO Auto-generated method stub
updateList();
}
});
btnClear.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub
dataSource.deleteAll();
}
});
}
updateList()
public void updateList(){
runOnUiThread(new Runnable() {
public void run() {
// TODO Auto-generated method stub
adapter.notifyDataSetChanged();
list.refreshDrawableState();
list.invalidate();
Toast.makeText(TestActivity.this, "AHHHH", Toast.LENGTH_SHORT).show();
}
});
}
私は別のapprochesの多くを試してみましたが、どれも動いていないようにみえます。
Tksです。
あなたはそれがうまくいかなかったと思いますか?データセットが変更されましたか? –
する必要があります。どこかで更新する必要がありますか?私はdataSourceコードを含む投稿を編集しました。 – Markissimo