使用SherlockListFragment进行SherlockFragmentActivity

时间:2012-10-31 17:28:00

标签: actionbarsherlock

我有3个标签,所有标签都在里面(当然是不同的)。当我点击标签时,我看到了正确的结果(我希望获得的结果)。

我知道如何获取点击的项目信息并向数据库发出有关该项目的请求并获取结果并创建新意图并将结果作为额外内容放入其中。但我不知道如何在不创建新意图的情况下在同一片段中显示我的结果。因为当我创建新意图并以新意图显示结果时,我的标签显然会消失,但我总是需要它们。

我的主要活动:

public class MainActivity extends SherlockFragmentActivity
{
  @Override
  public void onCreate(Bundle savedInstanceState)
  {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_main);

      ActionBar actionBar = getSupportActionBar();
      actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);

      actionBar.setDisplayShowTitleEnabled(true);
      Tab tab = actionBar.newTab()
                .setText("Dictionary")
                .setTabListener(new DictionaryFragment())
                .setIcon(R.drawable.android);

      actionBar.addTab(tab);

      tab = actionBar.newTab()
                .setText("Play")
                .setTabListener(new PlayFragment())
                .setIcon(R.drawable.apple);

      actionBar.addTab(tab);

      tab = actionBar.newTab()
            .setText("Manage")
            .setTabListener(new ManageFragment())
            .setIcon(R.drawable.apple);

      actionBar.addTab(tab);
  }
}

我的一个片段:

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
{   
  built_in_DB_setup dbOpenHelper = new built_in_DB_setup(getActivity().getBaseContext(), DB_NAME);
  database = dbOpenHelper.openDataBase();
  fillFreinds();
  ArrayAdapter<String> adapter = new
  ArrayAdapter<String>(getActivity().getBaseContext(), android.R.layout.simple_expandable_list_item_1, friends);
  setListAdapter(adapter);
  return super.onCreateView(inflater, container, savedInstanceState);
}

这是此类中的项目点击监听器

public void onListItemClick(ListView l, View v, int position, long id)
{
    super.onListItemClick(l, v, position, id); 
    String a=getData(((TextView) v).getText().toString()); 
    Intent i = new Intent("com.example.fragmenttest.VIEWWORD"); 
    i.putExtra("result", a); 
    startActivity(i); 
}

我有来自onListItem的String a我如何用这个字符串替换当前的Tab数据?

0 个答案:

没有答案