单击操作栏中的项目后刷新ListAdapter

时间:2013-07-30 21:02:31

标签: android button android-actionbar refresh

我对listfragment中的resfreshing数据感到沮丧。

1。)proplem:

我尝试在片段中处理动作栏菜单项(刷新按钮)以刷新列表中的数据, 但这不起作用(没有发生)

  @Override
    public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
        getMenuInflater().inflate(R.menu.main, menu);
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
    switch (item.getItemId()) {
    case R.id.action_refresh:
    ...

2。)问题

我有片段:

public class TodoFragment extends ListFragment implements LoaderManager.LoaderCallbacks<List<Item>>{...}

但我不知道,没有找到解决方案,如何刷新listfragment中的数据

或如何从活动刷新listfragment(在活动菜单按钮工作中)。

1 个答案:

答案 0 :(得分:0)

我用这种方式解决了问题:

private TodoFragment newFragment;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    newFragment = new TodoFragment();
    FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
    transaction.add(R.id.map_fragment, newFragment);
    transaction.commit();

}

 @Override
public boolean onOptionsItemSelected(MenuItem item) {

    switch (item.getItemId()) {
        case R.id.action_refresh:

         newFragment.refreshList();
         return true;

        default:
        return super.onOptionsItemSelected(item);
    }
}

    //In your fragment

public void refreshList() {
     // Your code
}