您的位置:首页 > 其它

高仿微博--启动页面

2016-05-13 09:57 239 查看
微博的启动页面 viewpager的滑动效果,实现的效果如下







好啦! 别的不说了,下面是实现滑动过程

首先是activity_guide.xml配置文件

<RelautIveLayout xlmns:android="http://scheas.android.com/apk/res/android"

android:layout_width="match_parent"

android:layout_height="match_parent">

<android.support.v4.view.ViewPager

android:id=@+id/pager_vp

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_alignParentBottom="true"

android:layout_marginBottom="50dp"

android:layout_centerHorizontal="true"

android:text="进入微博"

android:visibility="visible"/>

</RelautIveLayout>

////////////////////////////////////////////////////////////////////////////////////////////

主avtivity如下

public class GuideActivity exaends Activity{

//声明一个viewpager对象

ViewPager vp;

//声明一个imageview数据集合

List<ImageView> list;

//声明一个适配器

MyPagerAdapter adapter;

//声明一个button按钮

Button btn;

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_guide);

init();

}

private void init() {

vp = (ViewPager) findViewById(R.id.pager_vp);

list = new ArrayList<ImageView>();

btn = (Button) findViewById(R.id.pager_btn);

ImageView iv1=new ImageView(this);

iv1.setImageResource(R.drawable.guide_1);

ImageView iv2=new ImageView(this);

iv2.setImageResource(R.drawable.guide_2);

ImageView iv3=new ImageView(this);

iv3.setImageResource(R.drawable.guide_3);

list.add(iv1);

list.add(iv2);

list.add(iv3);

adapter = new MyPagerAdapter(list);

vp.setAdapter(adapter);

vp.setOnPageChangeListener(new OnPageChangeListener() {

/**

*

* 切换到一个item的时候执行的方法

*

* */

@Override

public void onPageSelected(int arg0) {

// TODO Auto-generated method stub

Log.i("OnpageSelected", arg0+"");

if(arg0==2){

//当下标为2的时候,把btn按钮设置为不可见

btn.setVisibility(View.VISIBLE);

}else{

btn.setVisibility(View.GONE);

btn.setOnClickListener(new OnClickListener() {

@Override

public void onClick(View v) {

//业务逻辑代码自己实现

}

});

}

}

@Override

public void onPageScrolled(int arg0, float arg1, int arg2) {

// TODO Auto-generated method stub

}

@Override

public void onPageScrollStateChanged(int arg0) {

// TODO Auto-generated method stub

}

});

}

//////////////////////////////////////////////////////////////

适配器的配置

public class MyPagerAdapter extends PagerAdapter {

List<ImageView> list;

public MyPagerAdapter(List<ImageView> list) {

super();

this.list = list;

}

@Override

public void destroyItem(ViewGroup container, int position, Object object) {

// TODO Auto-generated method stub

container.removeView((View) object);

}

@Override

public Object instantiateItem(ViewGroup container, int position) {

container.addView(list.get(position));

return list.get(position);

}

@Override

public int getCount() {

// TODO Auto-generated method stub

return list.size();

}

@Override

public boolean isViewFromObject(View arg0, Object arg1) {

// TODO Auto-generated method stub

return arg0==arg1;

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: