我在mMessageReceiver中更改ListView控件的源数据,但ListView控件仍然显示旧行, 如何刷新mMessageReceiver中的ListView控件?谢谢!如何刷新ListView控件;
private ListView lv;
private BroadcastReceiver mMessageReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
HandleRule.SaveFullRule(PublicPar.SharedRule);
//I hope to refresh ListView control
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.sms_main);
LocalBroadcastManager.getInstance(this).registerReceiver(mMessageReceiver,
new IntentFilter(PublicPar.LocalBroadcastForRule));
PublicPar.myContext=getApplicationContext();
lv = getListView();
FillListView();
}
private void FillListView(){
Cursor c=HandleRule.GetCursorOfAllRuleMain();
String[] cols=new String[] {"name"};
int[] views=new int[]{R.id.mylisttext};
SimpleCursorAdapter myAdapter=new SimpleCursorAdapter(this,R.layout.sms_simple_list_item_multiple_choice,c,cols,views);
lv.setAdapter(myAdapter);
lv.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
SetCheckBoxStatus();
}
难道你只是调用'FillListView()'? – hichris123
是的,我可以调用FillListView(),但我认为这不是好代码 – HelloCW