设置fragment的模式
package com.imooc.tab02;import android.os.Bundle;import android.support.v4.app.Fragment;import android.support.v4.app.FragmentActivity;import android.support.v4.app.FragmentManager;import android.support.v4.app.FragmentTransaction;import android.view.View;import android.view.View.OnClickListener;import android.view.Window;import android.widget.ImageButton;import android.widget.LinearLayout;public class MainActivity extends FragmentActivity implements OnClickListener{private LinearLayout mTabWeixin;private LinearLayout mTabFrd;private LinearLayout mTabAddress;private LinearLayout mTabSettings;private ImageButton mImgWeixin;private ImageButton mImgFrd;private ImageButton mImgAddress;private ImageButton mImgSettings;private Fragment mTab01;private Fragment mTab02;private Fragment mTab03;private Fragment mTab04;@Overrideprotected void onCreate(Bundle savedInstanceState){super.onCreate(savedInstanceState);requestWindowFeature(Window.FEATURE_NO_TITLE);setContentView(R.layout.activity_main);initView();initEvent();setSelect(0);}private void initEvent(){mTabWeixin.setOnClickListener(this);mTabFrd.setOnClickListener(this);mTabAddress.setOnClickListener(this);mTabSettings.setOnClickListener(this);}private void initView(){mTabWeixin = (LinearLayout) findViewById(R.id.id_tab_weixin);mTabFrd = (LinearLayout) findViewById(R.id.id_tab_frd);mTabAddress = (LinearLayout) findViewById(R.id.id_tab_address);mTabSettings = (LinearLayout) findViewById(R.id.id_tab_settings);mImgWeixin = (ImageButton) findViewById(R.id.id_tab_weixin_img);mImgFrd = (ImageButton) findViewById(R.id.id_tab_frd_img);mImgAddress = (ImageButton) findViewById(R.id.id_tab_address_img);mImgSettings = (ImageButton) findViewById(R.id.id_tab_settings_img);}private void setSelect(int i){FragmentManager fm = getSupportFragmentManager();FragmentTransaction transaction = fm.beginTransaction();hideFragment(transaction);// 把图片设置为亮的// 设置内容区域switch (i){case 0:if (mTab01 == null){mTab01 = new WeixinFragment();transaction.add(R.id.id_content, mTab01);} else{transaction.show(mTab01);}mImgWeixin.setImageResource(R.drawable.tab_weixin_pressed);break;case 1:if (mTab02 == null){mTab02 = new FrdFragment();transaction.add(R.id.id_content, mTab02);} else{transaction.show(mTab02);}mImgFrd.setImageResource(R.drawable.tab_find_frd_pressed);break;case 2:if (mTab03 == null){mTab03 = new AddressFragment();transaction.add(R.id.id_content, mTab03);} else{transaction.show(mTab03);}mImgAddress.setImageResource(R.drawable.tab_address_pressed);break;case 3:if (mTab04 == null){mTab04 = new SettingFragment();transaction.add(R.id.id_content, mTab04);} else{transaction.show(mTab04);}mImgSettings.setImageResource(R.drawable.tab_settings_pressed);break;default:break;}transaction.commit();}/** * 吧隐藏的fragment去掉 * @param transaction */private void hideFragment(FragmentTransaction transaction){if (mTab01 != null){transaction.hide(mTab01);}if (mTab02 != null){transaction.hide(mTab02);}if (mTab03 != null){transaction.hide(mTab03);}if (mTab04 != null){transaction.hide(mTab04);}}@Overridepublic void onClick(View v){resetImgs();switch (v.getId()){case R.id.id_tab_weixin:setSelect(0);break;case R.id.id_tab_frd:setSelect(1);break;case R.id.id_tab_address:setSelect(2);break;case R.id.id_tab_settings:setSelect(3);break;default:break;}}/** * 切换图片至暗色 */private void resetImgs(){mImgWeixin.setImageResource(R.drawable.tab_weixin_normal);mImgFrd.setImageResource(R.drawable.tab_find_frd_normal);mImgAddress.setImageResource(R.drawable.tab_address_normal);mImgSettings.setImageResource(R.drawable.tab_settings_normal);}}
fragment的生命周期

更多相关文章

  1. MediaTest
  2. Android——ImageView设置圆形边框
  3. Java W3C 生成 XML
  4. android GLSurfaceView 异常处理
  5. 简单的四种动画Demo
  6. 安卓如何关闭软键盘?
  7. webview导入H5小游戏
  8. Android----imageView实现图片的旋转和缩放
  9. Android应用开机自启

随机推荐

  1. 学习linux几本不错的书
  2. linux设置时间和把时间从UTC转成本地时间
  3. mysqk 5.7官方安装指导,比一般有效
  4. Linux&C网络编程————“聊天室”
  5. Linux内核构建系统之一
  6. Linux 下部署Django项目
  7. 如何使用ffmpeg将m4v和wmv视频转换为mp4
  8. Userspace RCU 安装过程记录
  9. linux c 网络编程, 常用网络函数,范例
  10. Linux 多线程 ”一写多读” 模式下的无锁