江苏开放大学2023年秋《Android基础 050324》第3次形考作业参考答案

2023年12月216:35:39发布者:江开学习小虫 39 views 举报
总字数:约6878字
第1页
1/7页

第2页
2/7页

第3页
3/7页

江苏开放大学

形成性考核作业

学 号:

姓 名:

课程代码:

050324

课程名称: Android

基础(专)

评阅教师:

3 次任务

3

次任务

050324 Android 基础(专) 第 3 次 形成性考核作业

作业说明:

1.做作业之前首先在封面填上自己的学号和姓名,做完作业后请写上作业完成时间。

2.学习完第 7-10 单元之后必须完成本次作业,并请在规定时间内通过学习平台提交 Word

文档形式的电子作业,本次作业占形成性考核总成绩的 40%。

作业内容:

请模仿手机版本的 QQ 软件功能和界面,模拟实现手机通信软件 APP,能够实现三

个选项卡:消息,群,联系人,请将项目设计和项目中程序文件(.java 文件,不

包括资源文件.xml)源码贴在以下位置,格式为先写文件名后贴代码,如下:

一、

项目设计

1、

功能设计

2、

主要界面设计(附图)

二、

项目主要源代码

1、MainActivity.java

package example.jsou.cn

import…..

……..

1、QqLoadingActivity.java

public

class

QqMainActivity

extends

AppCompatActivity

implements

View.OnClickListener, ViewPager.OnPageChangeListener{

/定义组件变量

private ViewPager mViewPager; 〃定义 viewpagerS#

private ImageViewl]mlmageViews ; ///定义三个 Imageview^组

private ArrayList<View> mViewsArrayList ; //viewpagerffl 件 包 含 数 据 view 集 合

private int iCurPos=0; // 当前页面的位置

@Override

protected void onCreate(Bundle savedlnstanceState {

super.onCreate (savedInstanceState ;

setContentView (R.layout.activity_qqmain);

initView () ; //1 初始化组件

initData () ; //2 数据初始化

setAdapter () ; //3 设置适配器

initlmageView () ; //4 对图片中 imagview 进行初始化的操作 }

//1 初始化组件

private void initView ) {

mViewPager= (ViewPager) findViewByld ( R.id.act_qqmain_viewpager)

mViewPager.addOnPageChangeListenerthis)

;

mlmageViews=new

lmageView[3];

mlmageViews[0]=

(ImageView)

findViewByld

(R.id.act_qqmain_img_news);

mlmageViews[1]=

(ImageView)

findViewByld

(R.id.act_qqmain_img_contact);

mlmageViews[2]= (ImageView) findViewByld (R.id.act_qqmain_img_plugin); }

//1 初始化组件

private void initData () {

第 1 页

050324 Android 基础(专) 第 3 次 形成性考核作业

//获得动态加载器

LayoutInflater mLayoutInflater=getLayoutinflater ();

//viewpager®件包含数据 view 集合

mViewsArrayList=new ArrayList<View> ();

〃 将 1 3 个 子 布 局 转 变 为 动 态 的 view , 加 载 到 viewpager 数 组 中 View

mView=mLayoutInflater.inflate ( R.layout.activity_qqmain_news , null ) ;

mViewsArrayList.add ( mView ) ; mView=mLayoutInflater.inflate

(R.layout.activity_qqmain_contact, null) ; mViewsArrayList.add ( mView ) ;

mView=mLayoutInflater.inflate ( R.layout.activity_qqmain_plugin , null ) ;

mViewsArrayList.add (mView);

}

//3 设置适配器

private void setAdapter) {

// 新建 ViewPager Adapter ViewPagerAdapter mViewPagerAdapter=new ViewPagerAdapter

(mViewsArrayList , this);

//ViewPageriS 置 Adapter mViewPager.setAdapter (mViewPagerAdapter);

}

//4 对图片中的小点进行初始化的操作

private void initlmageView () {

//初始化 imageview for (inti=0; i< 3; i++) {

mlmageViews[i].setEnabled (true);

mlmageViews[i].setTag (i);

mlmageViews[i].setOnClickListener (this);

}

/设置第一个 lmageview

iCurPos=0;

mlmage Views[iCurPos].setEnabled (false);

}

//6 设置小点被点击后的 point view 处理函数

private void setlmageView (int position) {

/设置被选中的 imageview 为 False

mlmage Views[position].setEnabled (false);

/设置以前被选中的 Imageview 为 True

mlmage Views[iCurPos].setEnabled (true); }

//7 设置小点被点击后的 viewpager 处理函数

private void setView Pager (int position) {

mViewPager.setCurrentltem (position); }

//5 设置 imageview 被选中后的处理函数

@Override public void onClick (View v ) {

//获取被选中的 Imageview 的位置

int iSelectPos= (Integer) v.getTag ();

/设置 imageview 的状态

setlmageView (iSelectPo§ ;

setViewPager (iSelectPo§ ;

第 2 页

总页数:7
提示:下载前请核对题目。客服微信:diandahome
下载的文档都包含参考答案
特别声明:以上内容(如有图片或文件亦包括在内)为“电大之家”用户上传并发布,仅代表该用户观点,本平台仅提供信息发布。