国家开放大学电大Android核心开发技术教学实践答案.docx
- 文档编号:179526
- 上传时间:2022-10-05
- 格式:DOCX
- 页数:5
- 大小:11.47KB
国家开放大学电大Android核心开发技术教学实践答案.docx
《国家开放大学电大Android核心开发技术教学实践答案.docx》由会员分享,可在线阅读,更多相关《国家开放大学电大Android核心开发技术教学实践答案.docx(5页珍藏版)》请在冰豆网上搜索。
2021年国家开放大学电大Android核心开发技术教学实践2答案
教学实践2
Android的五种传统布局分别为什么?
·LinearLayout(线性布局)
·RelativeLayout(相对布局)
·FrameLayout(帧布局)
·AbsoluteLayout(绝对布局)
·TableLayout(表格布局)
其中,最常用的布局是前三种,绝对布局用过一点,表格布局根本没用过(可能会很好用吧,但是前几种满足了我的日常需求)
编写activity_main.xml,实现底部菜单,并且底部菜单可以滑动切换。
1、ViewPager实现滑动切换页面
·ViewPager布局文件要求,也可以说这是在主布局界面(activity_main.xml)给ViewPager
申请空间位置:
....
layout_weight="1"android: id="@+id/viewpager"android: layout_width="match_parent"android: layout_height="0dp"android: layout_above="@+id/bottom_tab_layout"> .... ·1 ·2 ·3 ·4 ·5 ·6 ·7 ·8 ·9 ·自定义适配器(adapter)类,新建CustomViewPagerAdapter.java文件packagecom.sylanty.syvideo; importandroid.support.v4.view.PagerAdapter;importandroid.view.View; importandroid.view.ViewGroup; importjava.util.List; publicclassCustomViewPagerAdapterextendsPagerAdapter{List publicCustomViewPagerAdapter(List }; //获取页面数量@Override publicintgetCount(){returnpages.size(); } //判断类型是否匹配@Override publicbooleanisViewFromObject(Viewview,Objectobject){returnobject==view; } //加载page@Override publicObjectinstantiateItem(ViewGroupcontainer,intposition){Viewview=pages.get(position); container.addView(view);returnview; } //移除page@Override publicvoiddestroyItem(ViewGroupcontainer,intposition,Objectobject){container.removeView(pages.get(position)); } } · 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 ·在MainActivity类文件,MainActivity.java中调用ViewPager .... //MainActivity起始函数 protectedvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.main_activity);initPages(); //初始化自定义适配器 customViewPagerAdapter=newCustomViewPagerAdapter(pages); //设置adapterviewPager.setAdapter(customViewPagerAdapter);viewPager.setOnPageChangeListener(this); } .... ·1 ·2 ·3 ·4 ·5 ·6 ·7 ·8 ·9 ·10 ·11 ·12 ·13 .... //初始化viewpager页面 privatevoidinitPages(){ pages=newArrayList Viewhomepage=View.inflate(MainActivity.this,R.layout.home_viewpager,null);Viewmepage=View.inflate(MainActivity.this,R.layout.me_viewpager,null);pages.add(homepage); pages.add(mepage); } .... ·1 ·2 ·3 ·4 ·5 ·6 ·7 ·8 ·9 ·10 .... //继承自ViewPager.OnPageChangeListener接口 //实现页面滑动的事件监听@Override publicvoidonPageScrolled(intposition,floatpositionOffset,intpositionOffsetPixels){ } //继承自ViewPager.OnPageChangeListener接口 //实现页面选中后的事件监听@Override publicvoidonPageSelected(intposition){resumeTab(); switch(position){ case0: homeImage.setImageResource(R.drawable.home_blue);homeText.setTextColor(getResources().getColor(R.color.colorTextBlue));toolbartitle.setText(R.string.app_home); break;case1: meImage.setImageResource(R.drawable.me_blue);meText.setTextColor(getResources().getColor(R.color.colorTextBlue));toolbartitle.setText(R.string.app_me); break;default: break; } } @Override publicvoidonPageScrollStateChanged(intstate){ } ....
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 国家 开放 大学 电大 Android 核心 开发 技术 教学 实践 答案