亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 系統 > Android > 正文

使用ViewPager實現左右循環滑動及滑動跳轉

2020-04-11 12:37:05
字體:
來源:轉載
供稿:網友
前面一篇文章實現了使用ViewPager實現高仿launcher拖動效果 ,后來很多朋友問能不能實現左右循環滑動效果和引導頁面。今天實現了左右滑動,至于在最后一頁滑動跳轉,這個也做了但是效果不是太好,也希望有實現的朋友能夠分享下。在最后一頁添加一張圖片單擊跳轉,這個認為很簡單大家自己添加個圖片,點擊后跳轉就OK。

這篇是在實現了使用ViewPager實現高仿launcher拖動效果的基礎上做了一些小的修改,可以參照前面的。廢話不多說了,直接上代碼吧!

首先看一些layout下的xml
復制代碼 代碼如下:

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<android.support.v4.view.ViewPager
android:id="@+id/viewPager"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<LinearLayout
android:id="@+id/viewGroup"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_marginBottom="30dp"
android:gravity="center_horizontal"
android:orientation="horizontal" >
</LinearLayout>
</RelativeLayout>
</FrameLayout>

和前面一頁使用viewpager。使用ViewPager首先需要引入android-support-v4.jar這個jar包。自己不要忘記加。
下面是核心代碼:
復制代碼 代碼如下:

package cn.com.karl.viewpager;
import java.util.ArrayList;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.os.Parcelable;
import android.support.v4.view.PagerAdapter;
import android.support.v4.view.ViewPager;
import android.support.v4.view.ViewPager.OnPageChangeListener;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.ViewGroup.LayoutParams;
import android.view.Window;
import android.widget.ImageView;
public class MainActivity extends Activity {
ViewPager viewPager;
ArrayList<View> list;
ViewGroup main, group;
ImageView imageView;
ImageView[] imageViews;
private static int c_id = 0;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.requestWindowFeature(Window.FEATURE_NO_TITLE);
LayoutInflater inflater = getLayoutInflater();
list = new ArrayList<View>();
list.add(inflater.inflate(R.layout.item1, null));
list.add(inflater.inflate(R.layout.item2, null));
list.add(inflater.inflate(R.layout.item3, null));
list.add(inflater.inflate(R.layout.item4, null));
list.add(inflater.inflate(R.layout.item5, null));
imageViews = new ImageView[list.size()];
ViewGroup main = (ViewGroup) inflater.inflate(R.layout.main, null);

ViewGroup group = (ViewGroup) main.findViewById(R.id.viewGroup);
viewPager = (ViewPager) main.findViewById(R.id.viewPager);
for (int i = 0; i < list.size(); i++) {
imageView = new ImageView(MainActivity.this);
imageView.setLayoutParams(new LayoutParams(12,12));
//imageView.setPadding(10, 0, 10, 0);
imageViews[i] = imageView;
if (i == 0) {

imageViews[i].setBackgroundResource(R.drawable.guide_dot_white);
} else {
imageViews[i].setBackgroundResource(R.drawable.guide_dot_black);
}
group.addView(imageView);
}
setContentView(main);
viewPager.setAdapter(new MyAdapter());
viewPager.setOnPageChangeListener(new MyListener());
viewPager.setCurrentItem(300);

}
class MyAdapter extends PagerAdapter {
@Override
public int getCount() {
return Integer.MAX_VALUE;
}
@Override
public boolean isViewFromObject(View arg0, Object arg1) {
return arg0 == arg1;
}
@Override
public int getItemPosition(Object object) {
// TODO Auto-generated method stub
return super.getItemPosition(object);
}
@Override
public void destroyItem(View arg0, int arg1, Object arg2) {
// TODO Auto-generated method stub
//((ViewPager) arg0).removeView(list.get(arg1));
}
@Override
public Object instantiateItem(View arg0, int arg1) {
// TODO Auto-generated method stub
try{
((ViewPager) arg0).addView(list.get(arg1%list.size()),0);
}catch (Exception e) {
// TODO: handle exception
}
return list.get(arg1%list.size());
}
@Override
public void restoreState(Parcelable arg0, ClassLoader arg1) {
// TODO Auto-generated method stub
}
@Override
public Parcelable saveState() {
// TODO Auto-generated method stub
return null;
}
@Override
public void startUpdate(View arg0) {
// TODO Auto-generated method stub
}
@Override
public void finishUpdate(View arg0) {
// TODO Auto-generated method stub
}
}
class MyListener implements OnPageChangeListener {
//當滑動狀態改變時調用
@Override
public void onPageScrollStateChanged(int arg0) {
// TODO Auto-generated method stub
//arg0=arg0%list.size();

}
//當當前頁面被滑動時調用
@Override
public void onPageScrolled(int arg0, float arg1, int arg2) {
// TODO Auto-generated method stub

}
//當新的頁面被選中時調用
@Override
public void onPageSelected(int arg0) {
if(arg0>2){
arg0=arg0%list.size();
}
c_id = arg0;
for (int i = 0; i < imageViews.length; i++) {
imageViews[arg0]
.setBackgroundResource(R.drawable.guide_dot_white);
if (arg0 != i) {
imageViews[i]
.setBackgroundResource(R.drawable.guide_dot_black);
}
}

Log.e("-------------", "當前是第"+c_id+"頁");
}
}
}

代碼跟上一篇差不多,大家自己研究吧!下面看下效果:
 
忘記了,這種效果不太好用圖片演示,大家自己演示吧!滑動到最后一張,再滑動就是進入了第一頁。下面看下我logcat下的打?。?

這里默認是從第0頁開始的。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲人成在线观看网站高清| 欧美猛男性生活免费| 国产亚洲精品久久久久久| 青草青草久热精品视频在线观看| 国产精品羞羞答答| 爽爽爽爽爽爽爽成人免费观看| 精品福利樱桃av导航| 在线观看中文字幕亚洲| 日韩精品极品毛片系列视频| 91美女片黄在线观看游戏| 成人午夜在线视频一区| 狠狠综合久久av一区二区小说| 精品视频www| 国产精品大片wwwwww| 日韩经典中文字幕| 亚洲电影免费观看高清完整版在线| 亚洲在线视频观看| 亚洲香蕉成视频在线观看| 欧美在线视频观看| 国内精品伊人久久| 亚洲精品国精品久久99热| 久久亚洲一区二区三区四区五区高| 国产一区二区三区丝袜| 91精品国产综合久久香蕉的用户体验| 欧美电影免费观看高清| 日韩三级成人av网| 中国china体内裑精亚洲片| 海角国产乱辈乱精品视频| 成人久久一区二区三区| 亚洲国产成人在线播放| 国产一区二区丝袜| 国产精品无码专区在线观看| 国产精品免费一区二区三区都可以| 久久国产精品久久久久久| 人体精品一二三区| 欧美性xxxx极品hd欧美风情| 久久免费观看视频| 亚洲精品在线91| 欧美性xxxxx极品| 亚洲男人天天操| 日韩精品在线看| 精品亚洲一区二区三区在线播放| 国产精品久久久久久久久久新婚| 国产精品视频白浆免费视频| 日韩高清av在线| 91久久精品美女高潮| 久久久久久久久久婷婷| 欧美精品在线观看| 亚洲国产精品久久久久| 精品免费在线视频| 成人国内精品久久久久一区| 国产亚洲精品久久久久动| 国产精品久久久久不卡| 亚洲色图校园春色| 亚洲人成自拍网站| 欧美日韩综合视频网址| 91中文精品字幕在线视频| 日韩电影中文 亚洲精品乱码| 97在线观看视频| 国产欧美一区二区三区在线看| 精品激情国产视频| 2019中文字幕免费视频| 亚洲精品国产suv| 久久久久久伊人| 国产精品久久久久久av福利| 日韩视频免费大全中文字幕| 日韩经典一区二区三区| 成人国产精品久久久久久亚洲| 中文字幕欧美精品在线| 欧洲精品毛片网站| 成人一区二区电影| 中文字幕精品国产| 国产日韩欧美在线播放| 久久天天躁狠狠躁夜夜爽蜜月| 亚洲精品99久久久久| 91美女片黄在线观| 国产精品久久视频| 久久精品国产亚洲精品| 亚洲国产精品成人va在线观看| 久久人人爽人人爽人人片亚洲| 中文字幕精品国产| 亚洲色图综合久久| 久久精品中文字幕免费mv| 欧美日韩一区二区免费视频| 亚洲电影在线看| 欧美日韩精品在线视频| 久久久91精品国产| 国产欧美日韩中文字幕在线| 欧美猛少妇色xxxxx| 国语自产精品视频在线看一大j8| 久久青草福利网站| 午夜精品福利电影| 91精品啪在线观看麻豆免费| 亚洲人成在线播放| 国内精品国产三级国产在线专| 久久中文久久字幕| 欧美日韩国产中文字幕| 久久99久国产精品黄毛片入口| 日韩中文字幕免费| 91免费国产视频| 中文字幕av一区二区| 亚洲激情视频网站| 成人免费网站在线| 午夜精品一区二区三区在线视频| 九色成人免费视频| 两个人的视频www国产精品| 日韩中文字在线| 激情成人在线视频| 日韩高清人体午夜| 2019国产精品自在线拍国产不卡| 亚洲跨种族黑人xxx| 久久成人精品视频| 国产亚洲精品久久久久久| 欧美黄网免费在线观看| 97在线观看免费高清| 日本午夜人人精品| 国产精品ⅴa在线观看h| 亚洲精品中文字幕女同| 97免费在线视频| 午夜精品福利电影| 在线观看国产成人av片| 久久九九国产精品怡红院| 91日本在线视频| 久久人91精品久久久久久不卡| 国产精品成人免费电影| 日韩在线观看网站| 中文字幕欧美精品日韩中文字幕| 日韩精品视频中文在线观看| 欧美电影在线观看完整版| 亚洲字幕一区二区| 日本精品在线视频| 国产亚洲综合久久| 这里只有精品在线播放| 性色av一区二区三区免费| 国产在线视频欧美| 国产精品观看在线亚洲人成网| 亚洲国产精品高清久久久| 国产成人精品电影| 国产乱肥老妇国产一区二| 这里只有精品丝袜| 大伊人狠狠躁夜夜躁av一区| 欧美性猛交xxxx乱大交极品| 欧美久久精品一级黑人c片| 国产精品久久精品| 国产精品久久久久久久av大片| 久久精品国产免费观看| 欧美精品videosex牲欧美| 青青草国产精品一区二区| 91久久精品美女| 国产精品成人aaaaa网站| 91精品国产免费久久久久久| 亚洲欧美日韩久久久久久| 久久精品亚洲精品| 国产在线拍偷自揄拍精品| 国产精品女主播| 欧美性猛交视频| 亚洲欧洲午夜一线一品| 国产日韩在线播放| 日韩成人av网址| 亚洲国产精品va在线看黑人动漫| 欧美日韩在线视频一区| 欧美美女操人视频| 国产精品久久视频| 91高清视频免费观看|