界面布局,线性布局,水平排列,平均居中分布
四个TextVIEw,宽度为0dip,权重都是1,内容居中显示
主体内容部分使用linearLayout控件,设置ID
新建四个Fragment选项类,继承系统的Fragment类
重写onCreateVIEw()方法,返回一个VIEw对象
新建四个布局文件,显示选项卡对应的内容
在activity中
获取linearLayout对象,通过findVIEwByID()方法
先找到四个TextVIEw控件对象
调用四个TextVIEw对象的setonClickListener()方法,设置点击事件,参数:this
当前activity实现OnClicklisntenr接口,实现onClick()方法,传递进去VIEw对象
设置默认界面
获取FragmentManager对象,通过getFragmentManager()方法
调用FragmentManager对象的beginTransaction()方法,开启事务,获得FragmentTransaction对象
调用FragmentTransaction对象的replace()方法,用Fragment替换当前界面,参数:containerVIEwID,第一个Fragment对象
containerVIEwID是容器的ID,就是我们定义的内容主体的ID
调用FragmentTransaction对象的commit()方法,提交事务
在onClick()方法里面
调用VIEw对象的getID()方法,获取到当前点击的控件的ID
switch判断一下ID,根据不同的ID展示不同的fragment
FragmentTransaction对象的replace()方法里面,参数1必须是个容器对象,我用TextVIEw报类型转换异常,linearLayout控件下面必须有一个子控件
当前没有动画效果
package com.tsh.mytabfrag;import androID.app.Activity; androID.app.Fragment; androID.app.FragmentManager; androID.app.FragmentTransaction; androID.os.Bundle; androID.vIEw.VIEw; androID.vIEw.VIEw.OnClickListener; androID.Widget.TextVIEw;public class MainActivity extends Activity implements OnClickListener { private TextVIEw tv1,tv2,tv3; FragmentManager fm; FragmentTransaction ft; Fragment fm1,fm2,fm3; @OverrIDe protected voID onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentVIEw(R.layout.activity_main); // 初始化控件 tv1 = (TextVIEw) findVIEwByID(R.ID.tv1); tv2 = (TextVIEw) findVIEwByID(R.ID.tv2); tv3 = (TextVIEw) findVIEwByID(R.ID.tv3); fm1 = new Fragment1(); fm2 = Fragment2(); fm3 = Fragment3(); tv1.setonClickListener(this); tv2.setonClickListener(); tv3.setonClickListener(); fm = getFragmentManager(); ft = fm.beginTransaction(); ft.replace(R.ID.content,fm1); ft.commit(); } @OverrIDe onClick(VIEw v) { ft = fm.beginTransaction(); switch (v.getID()) { case R.ID.tv1: ft.replace(R.ID.content,fm1); break; R.ID.tv2: ft.replace(R.ID.content,fm2); R.ID.tv3: ft.replace(R.ID.content,fm3); ; default: ; } ft.commit(); }}
总结
以上是内存溢出为你收集整理的[android] 用fragment创建一个选项卡全部内容,希望文章能够帮你解决[android] 用fragment创建一个选项卡所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)