2013-07-30 16 views
0

我對listfragment中的刷新數據感到沮喪。刷新ListAdapter後點擊在活動條中的項

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(在活動菜單按鈕工作中)。

+0

這是一個有點神祕。你能發佈一些來自listfragment的相關代碼 – SemaphoreMetaphor

回答

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 
} 
+0

我已經實現了ActionBar.TabListener,並且這已經實現了不支持v4的方法:/這裏是我的活動:http://pastebin.com/un4zGkyK – eXistPierre