每日总结3/31
所花时间:3小时
代码量:如下:
博客量:本学期截至目前34篇
了解到的知识点:医学文献的检索
在今天我们团队完成了外包杯的那个系统软件,的javaweb页面,其中包括文字检索等一系列功能,和app中的界面设计。
以下代码为底部导航栏的实现:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 | package com.example.wenxian; import androidx.annotation.NonNull; import androidx.appcompat.app.AppCompatActivity; import androidx.viewpager.widget.PagerAdapter; import androidx.viewpager.widget.ViewPager; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.RadioButton; import android.widget.RadioGroup; import java.util.ArrayList; import java.util.List; public class MainActivity extends AppCompatActivity { private ViewPager mViewPager; private RadioGroup mRadioGroup; private RadioButton tab1,tab2,tab3,tab4; //四个单选按钮 private List<View> mViews; //存放视图 @Override protected void onCreate(Bundle savedInstanceState) { super .onCreate(savedInstanceState); setContentView(R.layout.activity_main); initView(); //初始化数据 //对单选按钮进行监听,选中、未选中 mRadioGroup.setOnCheckedChangeListener( new RadioGroup.OnCheckedChangeListener() { @Override public void onCheckedChanged(RadioGroup radioGroup, int i) { switch (i) { case R.id.rb_msg: mViewPager.setCurrentItem( 0 ); break ; case R.id.rb_people: mViewPager.setCurrentItem( 1 ); break ; case R.id.rb_me: mViewPager.setCurrentItem( 2 ); break ; } } }); } private void initView() { //初始化控件 mViewPager=findViewById(R.id.viewpager); mRadioGroup=findViewById(R.id.rg_tab); tab1=findViewById(R.id.rb_msg); tab2=findViewById(R.id.rb_people); tab3=findViewById(R.id.rb_me); mViews= new ArrayList<View>(); //加载,添加视图 mViews.add(LayoutInflater.from( this ).inflate(R.layout.activity_msg, null )); mViews.add(LayoutInflater.from( this ).inflate(R.layout.activity_people, null )); mViews.add(LayoutInflater.from( this ).inflate(R.layout.activity_me, null )); mViewPager.setAdapter( new MyViewPagerAdapter()); //设置一个适配器 //对viewpager监听,让分页和底部图标保持一起滑动 mViewPager.setOnPageChangeListener( new ViewPager.OnPageChangeListener() { @Override public void onPageScrolled( int position, float positionOffset, int positionOffsetPixels) { } @Override //让viewpager滑动的时候,下面的图标跟着变动 public void onPageSelected( int position) { switch (position) { case 0 : tab1.setChecked( true ); tab2.setChecked( false ); tab3.setChecked( false ); break ; case 1 : tab1.setChecked( false ); tab2.setChecked( true ); tab3.setChecked( false ); break ; case 2 : tab1.setChecked( false ); tab2.setChecked( false ); tab3.setChecked( true ); break ; } } @Override public void onPageScrollStateChanged( int state) { } }); } //ViewPager适配器 private class MyViewPagerAdapter extends PagerAdapter { @Override public int getCount() { return mViews.size(); } @Override public boolean isViewFromObject( @NonNull View view, @NonNull Object object) { return view==object; } @Override public void destroyItem( @NonNull ViewGroup container, int position, @NonNull Object object) { container.removeView(mViews.get(position)); } @NonNull @Override public Object instantiateItem( @NonNull ViewGroup container, int position) { container.addView(mViews.get(position)); return mViews.get(position); } } } |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)