Android实训项目报告

2019.7.2(实训第二天)

实验目标:本次主要目标是创建启动动画结束后,显示三张介绍该app内容的图片

实验步骤:

步骤一:在layout文件下创建三个xml文件,分别为one,two,three,其作用是放置介绍app内容的图片,其中,three.xml文件中还要在添加一个按钮,当用户点击它时,进入主界面,

布局图片如下:

            

 

在activity_main.xml文件中(即主界面)进行如下布局,布局图片如下:

步骤二:

经过上面的步骤后,在包 src.com.example中,创建名为adapter的包,下面创建类DepthPageTransformer和类ViewPagerAdapter,其中,类DepthPageTransformer的作用是使用户可以进行滑动介绍app内容的图片的操作。

在类ViewPagerAdapter中,创建四个抽象方法,分别为instantiateItem(ViewGroup container, int position),destroyItem(ViewGroup container, int position, Object object),getCount(),isViewFromObject(View view, Object object)

以上四个方法的作用如下:

getCount():返回当前有效的视图;

instantiateItem(ViewGroup container,int position):该方法的功能是创建指定位置的页面视图。适配器有责任增加即将创建的 View 视图到这里给定的 container 中;

isViewFromObject(View view, Object object):该函数用来判断 instantiateItem() 函数所返回来的 Key 与一个页面视图是否是代表的同一个视图(即它俩是否是对应的,对应的表示同一个 View);

destroyItem(ViewGroup container, int position, Object object):该方法的功能是移除一个给定位置的页面。适配器有责任从容器中删除这个视图,这是为了确保在 finishUpdate(viewGroup) 返回时视图能够被移除;

步骤三:该程序的定位是类似淘宝客户端,故要使用ListView控件,用于每个页面所要显示的多条信息,该控件以列表的形式显示具体数据内容,并且能够根据数据的长度自适应屏幕显示,使用时需对其进行数据适配,步骤二中的类ViewPagerAdapter的作用正是如此。

              在类ViewPagerActivity中,定义一个以List为数据源的view变量,ViewPagerAdapter的类变量vpAdapter及控件Button的变量start_btn;

               在函数onCreate中,为变量views创建一个ArrayList<View>()对象,用于存放one.xml,two.xml和three.xml三个布局文件,代码如下:

views = new ArrayList<View>();
	
		views.add(inflater.inflate(R.layout.one, null));
		views.add(inflater.inflate(R.layout.two, null));
		views.add(inflater.inflate(R.layout.three, null));

 

                然后初始化vpAdapter,并将views对象传递给它,再调用DepthPageTransformer()方法,并为start_btn创建一个点击监听器OnClickListener(),代码如下:

vpAdapter=new ViewPagerAdapter(views, this);
		vp=(ViewPager) findViewById(R.id.viewpager);
		vp.setPageTransformer(true, new DepthPageTransformer());
		vp.setAdapter(vpAdapter);
		start_btn=(Button) views.get(2).findViewById(R.id.start_btn);
		start_btn.setOnClickListener(new OnClickListener() {
			
			@Override
			public void onClick(View arg0) {
				// TODO Auto-generated method stub
				Intent it=new Intent(ViewPagerActivity.this,MainActivity.class);
				startActivity(it);
				finish();
			}
		});
	}

 

在监听器下的onClick()函数中有如下述代码段:

Intent it=new Intent(ViewPagerActivity.this,MainActivity.class);
				startActivity(it);
				finish();

 

其作用是使用intent将ViewPagerActivity的数据传递给MainActivity,并启动activity。

                 结果图如上的四个布局图片。

                  

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值