Я изменяю исходные данные элемента управления ListView в mMessageReceiver, но элемент управления ListView по-прежнему отображает старые строки, Как обновить элемент управления ListView в mMessageReceiver? Благодаря!Как обновить элемент управления 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