学徒浅谈Android开发:第一讲——滑屏效果的实现ViewPager+Fragment

本文是作者作为一名初级Android开发者,分享的关于如何使用ViewPager+Fragment实现滑屏效果的入门教程。ViewPager允许在多个界面间切换,而Fragment适用于大屏幕设备,具备丰富的功能。通过代码示例,作者展示了如何在Activity中应用Fragment,并创建滑屏效果,还提供了实现效果图。文章鼓励读者互动交流,共同学习进步。
摘要由CSDN通过智能技术生成

         小弟我作为一名入行不到一年的的android开发人员,多多少积累了些开发方面的经验,希望通过这个平台既可以巩固自己的经验,也可以和各位同行、大神们相互交流。

在以后的日子里,我将带领大家从设计一个最简单的app开始,慢慢深化、丰富它的内容,不断介绍自己在开发中遇到的问题和方法。同时欢迎大家和我交流

       作为第一讲,就给大家介绍一下客户端开发常用控件:ViewPager+Fragment。ViewPager和Fragement 都是在android 3.0以上版本才可使用的控件,其中Viewpager可以实现多界面的切换,即实现所谓的滑屏效果,Fragment是google专门针对平板开发的视图控件,相对于View而言,Fragment不仅卖相好,而且功能强大,完全适应于大屏幕的保证页面差异的需要,且支持在不同的Activity中使用并处理自己的输入输出事件和生命周期,一个Fragment对象和一个Activity对象的生命周期基本一样,唯一区别在于Fragment在onCreate()之后,会调用onCreateView()方法,来创建只属于当前页面的图像。当然,在使用Fragement作为视图控件时,Activity类需换成FragmentActivity。下面我将以代码的形式,展示滑屏效果的实现。


首先是主Activity类:我们今天要做的就是一个首页和分页的切换

package com.teach.demo;
/**
 * @author Arthur Lee
 * @time 04/08/2014
 * */
import java.util.ArrayList;

import android.os.Bundle;
import android.app.Activity;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentPagerAdapter;
import android.support.v4.view.PagerAdapter;
import android.support.v4.view.ViewPager;
import android.support.v4.view.ViewPager.OnPageChangeListener;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.LinearLayout;
import android.widget.RadioButton;
//要想使用Fragment,必须继承FragmentActivity
public class MainActivity extends FragmentActivity implements OnPageChangeListener{
	
	ArrayList<Fragment> fragment;
    public static ViewPager viewpager;
	public static ArrayList<RadioButton> rb ;
	LinearLayout lLayout;
	//ViewPager的适配器,但为了和Fragment相结合,这里要设置一个继承与FragmentPagerAdapter的自定义适配器
	PagerAdapter adapter;
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		//一定要先initView(),否则会报空
		initView();
		initAdapter();
		initButton();
	}
	
	//初始化页卡
	public void initView(){
		viewpager = (ViewPager)findViewById(R.id.main_viewpager);
		lLayout = (LinearLayout)findViewById(R.id.zone_rbt);
		//当前layout区域为隐藏的
		lLayout.setVisibility(View.INVISIBLE);
		fragment = new ArrayList<Fragment>();
		fragment.add(new IndexFragment());//0号
		fragment.add(new FirstFragment());//1号
		fragment.add(new SecondFragment());//2号
		fragment.add(new ThirdFragment());//3号
		fragment.add(new FourthFragment());//4号
	}
	
	//初始化适配器
	public void initAdapter(){
		adapter = new MyAdapter(getSupportFragmentManager(),fragment);
		viewpager.setAdapter(adapter);
		viewpager.setOnPageChangeListener(this);
		//默认起始页卡为0号页卡
		viewpager.set
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值