Android ActionBar Tabs学习笔记
来源:互联网 发布:混凝土回弹计算软件 编辑:程序博客网 时间:2024/05/17 23:56
本例主要实现用Tab切换不同的Fragment,点击View显示or隐藏ActionBar,把ActionBar 设为透明,使界面更加友好,详细代码见资源里的ActionBarTabs。
ActionBar Tab主要用于Fragment之间的切换,其必须要设置ActionBar.TabListener,详细代码如下ActionBarActivity.java:
import android.app.ActionBar;import android.app.Activity;import android.app.FragmentTransaction;import android.app.ActionBar.Tab;import android.os.Bundle;import android.os.CountDownTimer;import android.view.MotionEvent;import android.view.Window;public class ActionBarActivity extends Activity {/** Called when the activity is first created. */@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);//使ActionBar变得透明requestWindowFeature(Window.FEATURE_ACTION_BAR_OVERLAY);setContentView(R.layout.main);final ActionBar actionBar = getActionBar();actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);// remove the activity title to make space for tabsactionBar.setDisplayShowTitleEnabled(false);AFragment aFragment = new AFragment(); actionBar.addTab(actionBar.newTab().setText("Tab-A") .setTabListener(new ListenerA(aFragment))); BFragment bFragment = new BFragment(); actionBar.addTab(actionBar.newTab().setText("Tab-B") .setTabListener(new ListenerB(bFragment)));}//点击显示or隐藏ActionBarpublic boolean onTouchEvent(MotionEvent event){ActionBar bar = getActionBar();switch(event.getAction()){case MotionEvent.ACTION_UP:if(bar.isShowing()) bar.hide();else bar.show();break;default:break;}return true;}private class ListenerA implements ActionBar.TabListener {private AFragment mFragment;// Called to create an instance of the listener when adding a new tabpublic ListenerA(AFragment fragment) {mFragment = fragment;}public void onTabSelected(Tab tab, FragmentTransaction ft) {ft.add(R.id.fragment, mFragment, null);}public void onTabUnselected(Tab tab, FragmentTransaction ft) {ft.remove(mFragment);}public void onTabReselected(Tab tab, FragmentTransaction ft) {// do nothing }}}private class ListenerB implements ActionBar.TabListener {private BFragment mFragment;// Called to create an instance of the listener when adding a new tabpublic ListenerB(BFragment fragment) {mFragment = fragment;}public void onTabSelected(Tab tab, FragmentTransaction ft) {ft.add(R.id.fragment, mFragment, null);}public void onTabUnselected(Tab tab, FragmentTransaction ft) {ft.remove(mFragment);}public void onTabReselected(Tab tab, FragmentTransaction ft) {// do nothing }}}}
其中涉及到两个Fragment,在前面Fragment的笔记中讲过,这里就不再赘述。类AFragment实现如下,BFragment实现与这类似:
public class AFragment extends Fragment {public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { return inflater.inflate(R.layout.alayout, container, false); }}
- Android ActionBar Tabs学习笔记
- Android ActionBar Tabs学习笔记
- Android ActionBar Tabs学习笔记
- Android ActionBar Tabs学习笔记
- 学习笔记 android actionbar
- Android ActionBar学习笔记
- Android ActionBar学习笔记
- Android笔记 actionbar学习
- Android ActionBar Item学习笔记
- Android ActionBar Item学习笔记
- Android ActionBar Item学习笔记
- Android 学习笔记11 ActionBar
- android actionbar的学习笔记
- Android ActionBar详解(三):ActionBar实现切换Tabs标签
- Android ActionBar详解(三):ActionBar实现切换Tabs标签
- jquery tabs 学习笔记
- Android Actionbar学习笔记(三)-----修改Actionbar的样式
- Android Actionbar学习笔记(三)-----修改Actionbar的样式
- C#之属性与索引器
- NMEA-0183标准
- java中synchronized关键字小结
- 硬盘 结构 原理 磁道,扇区和柱面图示
- java jsp乱码问题解决方案
- Android ActionBar Tabs学习笔记
- zen-cart乱码问题总结。
- 请永远一颗勇敢的心
- java 集合循环删除(ConcurrentModificationException )
- thinkphp 前台html调用函数 格式化输出
- 让今天的我超越昨天的我
- 心理暗示的重要作用
- 认真做每一件事
- 客户端禁用了javascript和cookie的解决办法