选项卡中的第三个子活动由于第二个列表视图而无法正常工作

时间:2012-06-22 10:43:47

标签: android listview tags adapter subactivity

我有一个TabInterface.java,它有五个标签。 在其中一个选项卡中,我使用的是子活动。当我单击AddBook选项卡(扩展ActivityGroup)时,搜索工作簿页面会正确加载。当我点击搜索按钮时,会生成一个书籍列表。当我点击这本书时,必须打开一个新页面,但它的程序运行正常但没有在屏幕上显示任何内容。

TabInterface.java

public class TabInterface extends TabActivity
{
  super.onCreate(savedInstanceState);
  setContentView(R.layout.tablayout);
  Resources res = getResources();
  TabHost tabHost = getTabHost();
  LocalActivityManager mlam = new LocalActivityManager(this, false);
  mlam.dispatchCreate(savedInstanceState);
  ............................................
  intent = new Intent().setClass(this, AddBook.class);
  spec = tabHost.newTabSpec("AddBook").setIndicator("Add Book", res.getDrawable(R.drawable.tab_icons)).setContent(intent);
  tabHost.addTab(spec);
  ..............................................`   

AddBook.java

...........
Intent i = new Intent(this.getBaseContext(), BookList.class);
replaceContentView("blist", i, getApplicationContext());
........
public void replaceContentView(String id, Intent newIntent, Context c)
{
  View view = getLocalActivityManager().startActivity(id, newIntent.addFlags(Intent.FLAG_ACTIVITY_CLE AR_TOP)).getDecorView();
  this.setContentView(view);
}
..........

BookList.java

 ......................

 private class BookAdapter extends ArrayAdapter < Books > //my custom adater
 ...................
 public View getView(final int position, View convertView, ViewGroup parent)
 ...................

 //in getView function
 v.setOnClickListener(new View.OnClickListener()
 {
   public void onClick(View v)
   {
     Intent k = new Intent(getBaseContext(), BookNew.class);
     AddBook ab = (AddBook) getParent();
     ab.replaceContentView("bnew", k, getApplicationContext());
   }
 }

 ................... 

第三个子活动BookNew.java正常运行但输出未显示。没有标签显示时,它工作正常。我可以知道我哪里错了吗?

1 个答案:

答案 0 :(得分:0)

奇怪没人能回答我的问题。 花了大约5-6天后,我找到了解决方案。 之所以没有显示是因为我使用了notfyDataSetChanged(),所以它没有绘制下一个片段。