第二章实例:ActionBar结合Fragment显示
2016-02-02 22:27
267 查看
![](http://images2015.cnblogs.com/blog/634468/201602/634468-20160202222551725-1743790838.png)
![](http://images2015.cnblogs.com/blog/634468/201602/634468-20160202222557960-2057860795.png)
![](http://images2015.cnblogs.com/blog/634468/201602/634468-20160202222603725-832710329.png)
package tab.test; import com.example.actionbar_tab.R; import android.app.ActionBar; import android.app.ActionBar.Tab; import android.app.Activity; import android.app.Fragment; import android.app.FragmentTransaction; import android.net.wifi.p2p.WifiP2pManager.ActionListener; import android.os.Bundle; @SuppressWarnings("deprecation") public class ActionBarTab extends Activity implements ActionBar.TabListener { private ActionBar ab = null; @Override protected void onCreate(Bundle savedInstanceState) { this.setContentView(R.layout.main_layout); ab = this.getActionBar(); ab.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS); //--------------------------------------------------- ab.addTab(ab.newTab().setText("第一页").setTabListener(this)); ab.addTab(ab.newTab().setText("第二页").setTabListener(this)); ab.addTab(ab.newTab().setText("第三页").setTabListener(this)); super.onCreate(savedInstanceState); } //------------------------------------------------------------- //Avtivity实例状态恢复方法 @Override protected void onRestoreInstanceState(Bundle savedInstanceState) { if(savedInstanceState.containsKey("items")){ ab.setSelectedNavigationItem(savedInstanceState.getInt("items")); } super.onRestoreInstanceState(savedInstanceState); } //Avtivity实例状态保存方法 @Override protected void onSaveInstanceState(Bundle outState) { outState.putInt("items", ab.getSelectedNavigationIndex()); super.onSaveInstanceState(outState); } //-------------------------------------------------------------- @Override public void onTabReselected(Tab tab, FragmentTransaction fter) { } @Override public void onTabSelected(Tab tab, FragmentTransaction fts) { //-------------------- Bundle tab_info = new Bundle(); tab_info.putInt("items", tab.getPosition()+1); Fragment fragment = new Tab_Fragment(); fragment.setArguments(tab_info); //-------------------- FragmentTransaction ft = this.getFragmentManager().beginTransaction(); ft.replace(R.id.my_content, fragment); ft.commit(); } @Override public void onTabUnselected(Tab arg0, FragmentTransaction arg1) { // TODO Auto-generated method stub } }
xml:
//fragment_view <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <TextView android:id="@+id/my_text" android:background="#009eff" android:gravity="center_vertical|center_horizontal" android:layout_gravity="center_vertical|center_horizontal" android:layout_width="fill_parent" android:layout_height="fill_parent" android:text="Fragment" android:textSize="100sp" android:textColor="#FFFFFF"/> </LinearLayout>
//main_layout <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/my_content" android:background="#666" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > </LinearLayout>
相关文章推荐
- 看完《雪国列车》有感
- CodeForces 543A Writing Code(dp)
- Jobedin外企招聘网:6个要点不能不知道(转载)
- 【BZOJ1009】GT考试 DP
- 文章标题
- ruby self.included用法
- 第二章实例:Android窗口菜单显示
- 4000 小情绪
- 【POJ】1743 Musical Theme
- 个人笔记 html 04 提交表单与跳转页面冲突时
- HDOJ 1385 Minimum Transport Cost (Floyd + 打印字典序最小的路径)
- AngularJS中实现Model缓存
- ActiveMQ之消息指针
- CDOJ 1270 Playfair
- c++中的数据类型
- C++ 通用编程
- 后PPT时代
- CentOS下安装python-mysqldb
- 第二章实例:SimpleAdapter结合listview实现列表视图
- 搜索与回溯练习(二)