fragmentTabHost = (FragmentTabHost) this
.findViewById(android.R.id.tabhost);
fragmentTabHost.setup(this, this.getSupportFragmentManager(),
R.id.realtabcontent);
TabSpec tabSpecB1 = fragmentTabHost.newTabSpec("tab1");
tabSpecB1.setIndicator("消息");
TabSpec tabSpecB2 = fragmentTabHost.newTabSpec("tab2");
tabSpecB2.setIndicator("联系人");
TabSpec tabSpecB3 = fragmentTabHost.newTabSpec("tab3");
tabSpecB3.setIndicator("动态");
TabSpec tabSpecB4 = fragmentTabHost.newTabSpec("tab4");
tabSpecB4.setIndicator("设置");
// 重点,必须装载碎片
fragmentTabHost.addTab(tabSpecB1, Message.class, null);
fragmentTabHost.addTab(tabSpecB2, Contact.class, null);
fragmentTabHost.addTab(tabSpecB3, Trends.class, null);
fragmentTabHost.addTab(tabSpecB4, Setting.class, null);
fragmentTabHost.setCurrentTabByTag("tab2");这是我写的一个碎片的代码,你那个按钮要监听啥的要在其他的类里面实现,比如我的Message.class这个类里面实现,但这个类要继承Fragment类
.findViewById(android.R.id.tabhost);
fragmentTabHost.setup(this, this.getSupportFragmentManager(),
R.id.realtabcontent);
TabSpec tabSpecB1 = fragmentTabHost.newTabSpec("tab1");
tabSpecB1.setIndicator("消息");
TabSpec tabSpecB2 = fragmentTabHost.newTabSpec("tab2");
tabSpecB2.setIndicator("联系人");
TabSpec tabSpecB3 = fragmentTabHost.newTabSpec("tab3");
tabSpecB3.setIndicator("动态");
TabSpec tabSpecB4 = fragmentTabHost.newTabSpec("tab4");
tabSpecB4.setIndicator("设置");
// 重点,必须装载碎片
fragmentTabHost.addTab(tabSpecB1, Message.class, null);
fragmentTabHost.addTab(tabSpecB2, Contact.class, null);
fragmentTabHost.addTab(tabSpecB3, Trends.class, null);
fragmentTabHost.addTab(tabSpecB4, Setting.class, null);
fragmentTabHost.setCurrentTabByTag("tab2");这是我写的一个碎片的代码,你那个按钮要监听啥的要在其他的类里面实现,比如我的Message.class这个类里面实现,但这个类要继承Fragment类
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_t);
TabHost mTabHost = (TabHost)findViewById(R.id.tabhost);
mTabHost.setup();
LayoutInflater inflater_tab1 = LayoutInflater.from(this);
inflater_tab1.inflate(R.layout.a, mTabHost.getTabContentView());
inflater_tab1.inflate(R.layout.b, mTabHost.getTabContentView());
inflater_tab1.inflate(R.layout.c, mTabHost.getTabContentView());
mTabHost.addTab(mTabHost.newTabSpec("tab_test1").setIndicator("设备").setContent(new Intent(TActivity.this,aa.class)));
mTabHost.addTab(mTabHost.newTabSpec("tab_test2").setIndicator("设置").setContent(R.id.FrameLayout02));
mTabHost.addTab(mTabHost.newTabSpec("tab_test3").setIndicator("更多").setContent(R.id.FrameLayout03));
mTabHost.setCurrentTab(1);
mTabHost.setOnTabChangedListener(new TabHost.OnTabChangeListener() {
@Override
public void onTabChanged(String arg0) {
// TODO Auto-generated method stub
if("tab_test1".equals(arg0))
{
Toast.makeText(TActivity.this, "1", Toast.LENGTH_SHORT).show();
}
else if("tab_test2".equals(arg0))
{
Toast.makeText(TActivity.this, "2", Toast.LENGTH_SHORT).show();
}
else if("tab_test3".equals(arg0))
{
Toast.makeText(TActivity.this, "3", Toast.LENGTH_SHORT).show();
}
}
});
}
这是我设置的TabHost,然后先只看tab_test1这一个选项卡,我让它与aa类连接,然后aa类里面我是这么写的package com.example.t;import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;public class aa extends Activity {
private Button btnChange;
protected void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
btnChange.setOnClickListener(new Button.OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Toast.makeText(aa.this, "aaa", Toast.LENGTH_SHORT).show();
}
});
}
}会无法运行,报错这是什么问题
public class MainActivity extends TabActivity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
TabHost tabHost =this.getTabHost();
LayoutInflater.from(this).inflate(R.layout.activity_main, tabHost.getTabContentView(), true);
tabHost.addTab(tabHost.newTabSpec("tab1")
.setIndicator("", getResources().getDrawable(R.drawable.ic_launcher))
.setContent(new Intent(MainActivity.this,aa.class)));
tabHost.addTab(tabHost.newTabSpec("tab3")
.setIndicator("tab3")
.setContent(new Intent(MainActivity.this,aa.class)));
tabHost.addTab(tabHost.newTabSpec("tab2")
.setIndicator("tab2")
.setContent(new Intent(MainActivity.this,aa.class)));
}
}
这个不是设置到了子activity里面了么?
然后我在aa这里继承了activity,在aa里面对button进行监听,但是就如我截图的那样,不能运行
这个不是设置到了子activity里面了么?
然后我在aa这里继承了activity,在aa里面对button进行监听,但是就如我截图的那样,不能运行你aa.class里边setcontentview了么?
这个不是设置到了子activity里面了么?
然后我在aa这里继承了activity,在aa里面对button进行监听,但是就如我截图的那样,不能运行你aa.class里边setcontentview了么?
现在弄好了,不过冒出个新问题呃,就是
所有的都重叠到了一起,然后我想是不是因为没设置android:background的问题,之后我把每个页面的背景都设置了,就会出现设备那一项显示出来的是更多那一项的内容,感觉是设备那一项的东西都被覆盖掉了,这是什么情况?
这个不是设置到了子activity里面了么?
然后我在aa这里继承了activity,在aa里面对button进行监听,但是就如我截图的那样,不能运行你aa.class里边setcontentview了么?
哈,没问题了,我是忘记在inflate中加入false了谢谢啦