第4章我的模块.ppt





《第4章我的模块.ppt》由会员分享,可在线阅读,更多相关《第4章我的模块.ppt(50页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、Android项目实战博学谷 第4章 我的模块 底部导航栏 修改密码 设置密保 找回密码 u 掌 握 底 部 导 航 栏 的 开 发 , 并 能 实 现 设 置 界 面 ; u 掌 握 修 改 密 码 功 能 的 开 发 , 实 现 用 户 密 码 的 修 改 ;u 掌握设置密保功能的开发,并且通过密保可以找回用户密码。 学习目标 4.1 “我”的界面4.2 设置主讲内容Speech content主讲内容4.3 修改密码4.4 设置密码和找回密码 4.1 “我”的界面任务综述任务综述根据“我”的界面设计图可知,该界面包含了用户头像、用户名、播放记录条目,设置条目和底部用于切换界面的导航栏。当
2、点击用户头像和用户名时会进入个人中心,点击播放记录条目时会进入查看播放记录的界面,点击设置条目时会进入设置界面。在底部导航栏中包含3个按钮,分别为课程、习题和我,这3个按钮是用于切换课程界面、习题界面和“我”的界面。由于3个界面的底部都包含了这3个按钮,因此可以创建一个底部导航栏框架方便每个界面使用。 4.1 “我”的界面【知识点】【知识点】 ImageView控件、TextView控件; SharedPreferences的使用。【技能点】【技能点】 掌握底部导航栏框架的设计和逻辑构思; 掌握如何获取和清除SharedPreferences中的数据; 学会搭建底部导航栏框架。 【任务4-】底
3、部导航栏任务分析任务分析根据前面介绍的设计图可知,此项目包含一个底部导航栏(即底部3个按钮),为了方便后续布局的搭建,因此创建一个底部导航栏UI的框架,界面效果如图4-1所示。 【任务4-】底部导航栏任务实施任务实施任务步骤(任务步骤(详见教材详见教材P15P21) 【任务4-2】底部导航栏逻辑代码任务分析任务分析在底部导航栏中点击不同的按钮会进入不同的界面,因此需要为3个按钮添加监听事件。根据所在界面的不同,导航栏中的按钮和文字也有选中和未选中两种状态,因此需要创建方法来设置按钮的不同状态。在界面中间部分会根据按钮的选中状态切换不同的界面,因此需要创建相应的方法用于创建视图。 任务实施任务实
4、施任务步骤(任务步骤(详见教材详见教材P15P21)【任务4-2】底部导航栏逻辑代码 (6)读取和清除SharedPreferences中的登录状态 private void setSelectedStatus(int index) switch (index) case 0: mCourseBtn.setSelected(true); iv_course.setImageResource(R.drawable.main_course_icon_selected); tv_course.setTextColor(Color.parseColor(#0097F7); rl_title_bar.s
5、etVisibility(View.VISIBLE); tv_main_title.setText(博学谷课程); break; case 1: mExercisesBtn.setSelected(true); iv_exercises.setImageResource(R.drawable.main_exercises_icon_selected); tv_exercises.setTextColor(Color.parseColor(#0097F7); rl_title_bar.setVisibility(View.VISIBLE); tv_main_title.setText(博学谷习题
6、); break; case 2: . (6)读取和清除SharedPreferences中的登录状态 public boolean onKeyDown(int keyCode, KeyEvent event) if (keyCode = KeyEvent.KEYCODE_BACK & event.getAction() = KeyEvent.ACTION_DOWN) if (System.currentTimeMillis() - exitTime) 2000) Toast.makeText(MainActivity.this, 再按一次退出博学谷, Toast.LENGTH_SHORT).
7、show(); exitTime = System.currentTimeMillis(); else MainActivity.this.finish(); if (readLoginStatus() clearLoginStatus(); System.exit(0); return true; return super.onKeyDown(keyCode, event); 【任务4-3】“我”的界面 任务分析任务分析“我”的界面需要显示头像,用户名,播放记录条目,设置条目和底部导航栏,界面效果如图4-2所示。 任务实施任务实施任务步骤(任务步骤(详见教材详见教材P15P21)【任务4-3
8、】“我”的界面 【任务4-4】AnalysisUtils工具类任务分析任务分析由于博学谷项目在保存和获取数据时会多次用到用户名,因此可以创建一个工具类AnalysisUtils用于获取用户名,便于后续调用。 package com.boxuegu.utils; import android.content.Context; import android.content.SharedPreferences; public class AnalysisUtils /* * 从SharedPreferences中读取登录用户名 */public static String readLoginUser
9、Name(Context context)SharedPreferences sp=context.getSharedPreferences(loginInfo, Context.MODE_PRIVATE);String userName=sp.getString(loginUserName, );/获取登录时的用户名return userName; 任务实施任务实施任务步骤(任务步骤(详见教材详见教材P15P21)【任务4-4】AnalysisUtils工具类 【任务4-5】我的界面逻辑代码任务分析任务分析在“我”的界面中需要判断用户是否登录,若用户已经登录则显示用户名,若用户未登录则显示“
10、点击登录”。若用户已经登录,当点击用户头像时会跳转到个人资料界面,点击播放记录条目时跳转到播放记录界面,点击设置条目时跳转到设置界面。 任务实施任务实施任务步骤(任务步骤(详见教材详见教材P15P21)【任务4-5】我的界面逻辑代码 private MyInfoView mMyInfoView;在【任务4-2】MainActivity.java文件中的第40行代码下方添加如下代码在配置文件中将MainActivity的标签以及标签中的所有内容剪切到SplashActivity所在的标签中,如下所示 if (mMyInfoView = null) mMyInfoView = new MyInfo
11、View(this); mBodyLayout.addView(mMyInfoView.getView(); else mMyInfoView.getView(); mMyInfoView.showView();(4)修改底部导航栏 (5)修改登录成功时代码在【任务4-2】中MainActivity.java文件,在该文件中重写onActivityResult()方法,并导入对应的包,具体代码如下: if (mMyInfoView = null) mMyInfoView = new MyInfoView(this); mBodyLayout.addView(mMyInfoView.getVie
12、w(); else mMyInfoView.getView(); mMyInfoView.showView(); 4.1 “我”的界面4.2 设置主讲内容Speech content主讲内容4.3 修改密码4.4 设置密码和找回密码 4.2 设置任务综述任务综述在设置界面主要包含了修改密码、设置密保、退出登录等功能。当用户点击修改密码时会跳转到修改密码界面,当用户点击设置密保时会跳转到设置密保界面,当点击退出登录时会退出当前登录账号。 【知识点】【知识点】ImageView控件、TextView控件;SharedPreferences的使用;setResult(RESULT_OK, data)
13、方法的使用。【技能点】【技能点】 掌握设置界面的设计和逻辑构思; 掌握如何清除SharedPreferences中的数据; 通过setResult(RESULT_OK, data)方法实现界面间的数据回传功能; 实现博学谷的退出登录功能。4.2 设置 任务分析任务分析根据任务综述可知设置界面有3个功能,分别为修改密码、设置密保和退出登录,界面效果如图4-3所示。【任务4-6】设置界面 【任务4-6】设置界面任务实施任务实施任务步骤(任务步骤(详见教材详见教材P15P21) 【任务4-7】设置界面逻辑代码任务分析任务分析在设置界面中添加点击事件,当点击修改密码时跳转到修改密码界面,当点击设置密保
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 模块

限制150内