Tab and TabHost_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > Tab and TabHost

Tab and TabHost

 2011/8/10 17:20:58  lucene3212  http://lucene3212.iteye.com  我要评论(0)
  • 摘要:<spanstyle="font-family:verdana,helvetica,arial,sans-serif;color:#444444;"><spanstyle="border-collapse:collapse;line-height:22px;font-size:small;">创建tab时,继承的是tabactivity而不是</span></span><spanstyle="font-family:verdana
  • 标签:BHO
    <span style="font-family: verdana, helvetica, arial, sans-serif; color: #444444;"><span style="border-collapse: collapse; line-height: 22px; font-size: small;">创建tab时,继承的是tabactivity而不是</span></span><span style="font-family: verdana, helvetica, arial, sans-serif; font-size: small; border-collapse: collapse; color: #444444; line-height: 22px;">activity。</span>
?
public class tabs extends tabactivity{}
[size=small;]<span style="font-family: verdana, helvetica, arial, sans-serif; font-size: 14px; border-collapse: collapse; color: #444444; line-height: 22px;">盛放tab的容器就是tabhost。[/size]??</span>
</strong><span style="">[b][size=small;]然后需要在layout里,修改布局方式为framelayout。这种布局方式将允许有子布局的存在,这就对应了tabactivity的布局方式。在tabhost内,每个将会存在的页签都对应了framelayout下的一个具体layout[/size]。</span>
?
?
?
<?xml version="1.0" encoding="utf-8"?><framelayout xmlns:android="http://schemas.android.com/apk/res/android"    android:layout_width="fill_parent" android:layout_height="fill_parent">    <linearlayout android:id="@+id/widget_layout_blue"        android:layout_width="fill_parent" android:layout_height="fill_parent"        androidrientation="vertical" >        <edittext android:id="@+id/widget34" android:layout_width="fill_parent"            android:layout_height="wrap_content" android:text="edittext"            android:textsize="18sp">        </edittext>        <button android:id="@+id/widget30" android:layout_width="wrap_content"            android:layout_height="wrap_content" android:text="button">        </button>    </linearlayout>    <linearlayout android:id="@+id/widget_layout_red"        android:layout_width="fill_parent" android:layout_height="fill_parent"        androidrientation="vertical"  >        <analogclock android:id="@+id/widget36"            android:layout_width="wrap_content" android:layout_height="wrap_content">        </analogclock>    </linearlayout>    <linearlayout android:id="@+id/widget_layout_green"        android:layout_width="fill_parent" android:layout_height="fill_parent"        androidrientation="vertical">        <radiogroup android:id="@+id/widget43"            android:layout_width="166px" android:layout_height="98px"            androidrientation="vertical">            <radiobutton android:id="@+id/widget44"                android:layout_width="wrap_content" android:layout_height="wrap_content"                android:text="radiobutton">            </radiobutton>            <radiobutton android:id="@+id/widget45"                android:layout_width="wrap_content" android:layout_height="wrap_content"                android:text="radiobutton">            </radiobutton>        </radiogroup>    </linearlayout></framelayout>
?
[size=small;]?[/size]<span style="">[size=small;]通过代码即可将layout分布到各个tab上面去。[/size]</span>
?
?
private tabhost mytabhost;	@override	protected void oncreate(bundle bundle){		super.oncreate(bundle);		mytabhost=this.gettabhost();//从tabactivity上面获取放置tab的tabhost		layoutinflater.from(this).inflate(r.layout.tabs, mytabhost.gettabcontentview(), true);		//from(this)从这个tabactivity获取layoutinflater		//r.layout.main 存放tab布局		//通过tabhost获得存放tab标签页内容的framelayout		//是否将inflate 拴系到根布局元素上		mytabhost.setbackgroundcolor(color.argb(150, 22, 70, 150));		//设置一下tabhost的颜色		mytabhost        .addtab(mytabhost.newtabspec("k1")// 制造一个新的标签k1                .setindicator("kk",                        getresources().getdrawable(r.drawable.a))                // 设置一下显示的标题为kk,设置一下标签图标为a                .setcontent(r.id.widget_layout_red));		mytabhost.setontabchangedlistener(new ontabchangelistener(){            public void ontabchanged(string tabid) {                            }                    });				mytabhost        .addtab(mytabhost.newtabspec("k2")// 制造一个新的标签k2                .setindicator("kk",                        getresources().getdrawable(r.drawable.b))                // 设置一下显示的标题为kk,设置一下标签图标为b                .setcontent(r.id.widget_layout_green));		mytabhost.setontabchangedlistener(new ontabchangelistener(){            public void ontabchanged(string tabid) {                            }                    });				mytabhost        .addtab(mytabhost.newtabspec("k3")// 制造一个新的标签k3                .setindicator("kk",                        getresources().getdrawable(r.drawable.c))                // 设置一下显示的标题为kk,设置一下标签图标为c                .setcontent(r.id.widget_layout_blue));		mytabhost.setontabchangedlistener(new ontabchangelistener(){            public void ontabchanged(string tabid) {                            }                    });			}
[size=small;]?[/size]<span style="">[size=small;]设置了一个ontabchangedlistener,用于监听当页签选择改变的事件.[/size]</span>
	mytabhost.setontabchangedlistener(new ontabchangelistener(){            public void ontabchanged(string tabid) {                toast.maketext(getapplicationcontext(),"点击了tab"+tabid, toast.length_short).show();            }  
?<br><img src="/Upload/Images/2011081017/95D76E761C4D4A25.jpg" alt=""><br>?<span style="">[size=small;]<strong>页签的显示就完成了,下面就需要实现与页签对应的不同菜单。[/b][/size]</span>
?
 
上一篇: singleton 下一篇: android打电话
发表评论
用户名: 匿名