android 标题联动,实现标题栏联动Fragment

1 public classMainActivity extends AppCompatActivity implements View.OnClickListener {2

3 //第一次点击与第二次点击的间隔时间

4 private longexitTime;5

6 private ListfragmentList;7 privateViewPager viewPager;8 privateFragmentAdapter adapter;9 privateImageButton btnImg;10 privateTextView textView1,textView2,textView3;11 private int num = 0;12

13 @Override14 protected voidonCreate(Bundle savedInstanceState) {15 super.onCreate(savedInstanceState);16 setContentView(R.layout.activity_main);17 initView();18 }19

20 private voidinitView(){21 btnImg =(ImageButton)findViewById(R.id.btn_Img_Ret);22 textView1 =(TextView)findViewById(R.id.txt1);23 textView2 =(TextView)findViewById(R.id.txt2);24 textView3 =(TextView)findViewById(R.id.txt3);25

26 textView1.setOnClickListener(this);27 textView2.setOnClickListener(this);28 textView3.setOnClickListener(this);29 btnImg.setOnClickListener(this);30

31 viewPager =(ViewPager)findViewById(R.id.viewPage);32 viewPager.setOnPageChangeListener(newMyPagerChangeListener());33

34 fragmentList = new ArrayList<>();35 fragmentList.add(newTestFragment1());36 fragmentList.add(newTestFragment2());37 fragmentList.add(newTestFragment3());38

39 adapter = newFragmentAdapter(getSupportFragmentManager(),fragmentList);40 viewPager.setAdapter(adapter);41

42 //初始化显示第一个页面,以及更改选中的标题样式

43 viewPager.setCurrentItem(0); //选中第一个页面

44 textView1.setTextSize(16); //设置选中的标题字体16sp

45 textView1.setTextColor(Color.parseColor("#039BE5")); //设置选中的标题字体颜色

46 }47

48

49 @Override50 public voidonClick(View view) {51 switch(view.getId()){52 caseR.id.txt1:53 viewPager.setCurrentItem(0);54 break;55 caseR.id.txt2:56 viewPager.setCurrentItem(1);57 break;58 caseR.id.txt3:59 viewPager.setCurrentItem(2);60 break;61 }62 }63

64 //设置一个ViewPager的监听事件,当左右滑动ViewPager时菜单栏被选中状态跟着改变

65 public classMyPagerChangeListener implements ViewPager.OnPageChangeListener{66

67 @Override68 public void onPageScrolled(int position, float positionOffset, intpositionOffsetPixels) {69

70 }71

72 @Override73 public void onPageSelected(intposition) {74 switch(position){75 case 0:76 textView1.setTextSize(16);77 textView2.setTextSize(14);78 textView3.setTextSize(14);79 textView1.setTextColor(Color.parseColor("#039BE5"));80 textView2.setTextColor(Color.GRAY);81 textView3.setTextColor(Color.GRAY);82 break;83 case 1:84 textView1.setTextSize(14);85 textView2.setTextSize(16);86 textView3.setTextSize(14);87 textView1.setTextColor(Color.GRAY);88 textView2.setTextColor(Color.parseColor("#039BE5"));89 textView3.setTextColor(Color.GRAY);90 break;91 case 2:92 textView1.setTextSize(14);93 textView2.setTextSize(14);94 textView3.setTextSize(16);95 textView1.setTextColor(Color.GRAY);96 textView2.setTextColor(Color.GRAY);97 textView3.setTextColor(Color.parseColor("#039BE5"));98 break;99 }100 }101

102 @Override103 public void onPageScrollStateChanged(intstate) {104

105 }106 }107

108 /**109 * 实现点击两次系统返回键退出应用110 * @param keyCode111 * @param event112 * @return113 */

114 @Override115 public boolean onKeyDown(int keyCode, KeyEvent event) {116 if(keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0){117 exit();118 return true;119 }120 return super.onKeyDown(keyCode, event);121 }122

123 private voidexit(){124 if((System.currentTimeMillis() - exitTime) > 2000){125 Toast.makeText(this, "再次点击退出应用", Toast.LENGTH_SHORT).show();126 exitTime =System.currentTimeMillis();127 }else{128 finish();129 System.exit(0);130 }131 }132 }

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值