java底部菜单_Fragment实现底部导航栏

1 packagecom.example.mywechat;2 importandroid.app.Fragment;3 importandroid.annotation.SuppressLint;4 importandroid.app.Activity;5 importandroid.app.FragmentManager;6 importandroid.app.FragmentTransaction;7 importandroid.os.Bundle;8 importandroid.util.Log;9 importandroid.view.View;10 importandroid.view.Window;11 importandroid.widget.ImageButton;12 importandroid.widget.LinearLayout;13

14 @SuppressLint("RestrictedApi")15 public class MainActivity extends Activity implementsView.OnClickListener {16 privateLinearLayout mTabWeixin;17 privateLinearLayout mTabFrd;18 privateLinearLayout mTabAddress;19 privateLinearLayout mTabSettings;20

21 privateImageButton mImgWeixin;22 privateImageButton mImgFrd;23 privateImageButton mImgAddress;24 privateImageButton mImgSettings;25

26 private Fragment mTab01 = newweixinFragment();27 private Fragment mTab02 = newfrgFragment();28 private Fragment mTab03 = newcontactFragment();29 private Fragment mTab04 = newsettingFragment();30

31 privateFragmentManager fm;32

33 @Override34 protected voidonCreate(Bundle savedInstanceState) {35

36 requestWindowFeature(Window.FEATURE_NO_TITLE);37 super.onCreate(savedInstanceState);38 setContentView(R.layout.activity_main);39 initView();40 initEvent();41 initFragment();42 SetSelect(0);43

44 }45

46 private voidinitFragment(){47 fm =getFragmentManager();48 FragmentTransaction transaction =fm.beginTransaction();49 transaction.add(R.id.id_content,mTab01);50 transaction.add(R.id.id_content,mTab02);51 transaction.add(R.id.id_content,mTab03);52 transaction.add(R.id.id_content,mTab04);53 transaction.commit();54 }55

56 private voidinitEvent(){57 mTabWeixin.setOnClickListener(this);58 mTabFrd.setOnClickListener(this);59 mTabAddress.setOnClickListener(this);60 mTabSettings.setOnClickListener(this);61 }62

63 private voidinitView(){64 mTabWeixin =findViewById(R.id.id_tab_weixin);65 mTabFrd =findViewById(R.id.id_tab_frd);66 mTabAddress =findViewById(R.id.id_tab_contact);67 mTabSettings =findViewById(R.id.id_tab_settings);68

69 mImgWeixin =findViewById(R.id.id_tab_weixin_img);70 mImgFrd =findViewById(R.id.id_tab_frd_img);71 mImgAddress =findViewById(R.id.id_tab_contact_img);72 mImgSettings =findViewById(R.id.id_tab_settings_img);73

74 }75

76 private void SetSelect(inti){77 FragmentTransaction transaction =fm.beginTransaction();78 hideFragment(transaction);79 switch(i){80 case 0:81 Log.d("setSelect","1");82 transaction.show(mTab01);83 mImgWeixin.setImageResource(R.drawable.tab_weixin_pressed);84 break;85 case 1:86 Log.d("setSelect","2");87 transaction.show(mTab02);88 mImgFrd.setImageResource(R.drawable.tab_find_frd_pressed);89 break;90 case 2:91 Log.d("setSelect: ","3");92 transaction.show(mTab03);93 mImgAddress.setImageResource(R.drawable.tab_address_pressed);94 break;95 case 3:96 Log.d("setSelect: ", "4 ");97 transaction.show(mTab04);98 mImgSettings.setImageResource(R.drawable.tab_settings_pressed);99 break;100 default:101 break;102

103 }104 transaction.commit();105 }106

107 private voidhideFragment (FragmentTransaction transaction){108 transaction.hide(mTab01);109 transaction.hide(mTab02);110 transaction.hide(mTab03);111 transaction.hide(mTab04);112 }113

114 @Override115 public voidonClick(View v) {116 Log.d("onClick", "1");117 resetImgs();118 switch(v.getId()){119 caseR.id.id_tab_weixin:120

121 SetSelect(0);122 break;123 caseR.id.id_tab_frd:124

125 SetSelect(1);126 break;127 caseR.id.id_tab_contact:128

129 SetSelect(2);130 break;131 caseR.id.id_tab_settings:132

133 SetSelect(3);134 break;135 default:136 break;137 }138 }139 //切换图片至暗色

140 public voidresetImgs(){141 mImgWeixin.setImageResource(R.drawable.tab_weixin_normal);142 mImgFrd.setImageResource(R.drawable.tab_find_frd_normal);143 mImgAddress.setImageResource(R.drawable.tab_address_normal);144 mImgSettings.setImageResource(R.drawable.tab_settings_normal);145

146 }147 }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值