Android實(shí)現(xiàn)歡迎滑動頁面
本文實(shí)例為大家分享了Android實(shí)現(xiàn)歡迎滑動頁面的具體代碼,供大家參考,具體內(nèi)容如下
一、效果圖
二、源碼
1.activity_welcome_guide.xml
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" ? ? android:layout_width="match_parent" ? ? android:layout_height="match_parent" ? ? android:orientation="vertical" > ? ? <android.support.v4.view.ViewPager ? ? ? ? android:id="@+id/welcome_pager" ? ? ? ? android:layout_width="match_parent" ? ? ? ? android:layout_height="match_parent" /> ? ? <Button ? ? ? ? android:id="@+id/welcome_guide_btn" ? ? ? ? android:layout_width="wrap_content" ? ? ? ? android:layout_height="wrap_content" ? ? ? ? android:layout_alignParentBottom="true" ? ? ? ? android:layout_centerHorizontal="true" ? ? ? ? android:layout_marginBottom="80dp" ? ? ? ? android:background="@mipmap/guide_button" ? ? ? ? android:paddingLeft="30dp" ? ? ? ? android:paddingRight="30dp" ? ? ? ? android:visibility="gone" /> </RelativeLayout>
2.WelcomeGuideActivity.java
/** ?* 滑動頁面 ?* ?* @author Guan ?* @file com.guan.dianping.activity ?* @date 2015/11/3 ?* @Version 1.0 ?*/ public class WelcomeGuideActivity extends FrameActivity { ? ? @ViewInject(R.id.welcome_guide_btn) ? ? private Button btn; ? ? @ViewInject(R.id.welcome_pager) ? ? private ViewPager pager; ? ? private List<View> list; ? ? @Override ? ? protected void onCreate(Bundle savedInstanceState) { ? ? ? ? super.onCreate(savedInstanceState); ? ? ? ? setContentView(R.layout.activity_welcome_guide); ? ? ? ? ViewUtils.inject(this); ? ? ? ? init(); ? ? ? ? initViewPager(); ? ? } ? ? @OnClick(R.id.welcome_guide_btn) ? ? public void click(View view) { ? ? ? ? //頁面的跳轉(zhuǎn) ? ? ? ? startActivity(new Intent(getBaseContext(), MainActivity.class)); ? ? ? ? finish(); ? ? } ? ? //初始化 ? ? public void init() { ?? ? ? ?list = new ArrayList<View>(); ? ? } ? ?? ? ? //初始化ViewPager的方法 ? ? public void initViewPager() { ? ? ? ? ImageView iv1 = new ImageView(this); ? ? ? ? iv1.setImageResource(R.mipmap.guide_01); ? ? ? ? ImageView iv2 = new ImageView(this); ? ? ? ? iv2.setImageResource(R.mipmap.guide_02); ? ? ? ? ImageView iv3 = new ImageView(this); ? ? ? ? iv3.setImageResource(R.mipmap.guide_03); ? ? ? ? list.add(iv1); ? ? ? ? list.add(iv2); ? ? ? ? list.add(iv3); ? ? ? ?? ? ? ? ? pager.setAdapter(new MyPagerAdapter()); ? ? ? ? //監(jiān)聽ViewPager滑動效果 ? ? ? ? pager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() { ? ? ? ? ? ? //頁卡被選中的方法 ? ? ? ? ? ? @Override ? ? ? ? ? ? public void onPageSelected(int arg0) { ? ? ? ? ? ? ? ? //如果是第三個頁面 ? ? ? ? ? ? ? ? if (arg0 == 2) { ? ? ? ? ? ? ? ? ? ? btn.setVisibility(View.VISIBLE); ? ? ? ? ? ? ? ? } else { ? ? ? ? ? ? ? ? ? ? btn.setVisibility(View.GONE); ? ? ? ? ? ? ? ? } ? ? ? ? ? ? } ? ? ? ? ? ? @Override ? ? ? ? ? ? public void onPageScrolled(int arg0, float arg1, int arg2) { ? ? ? ? ? ? } ? ? ? ? ? ? @Override ? ? ? ? ? ? public void onPageScrollStateChanged(int arg0) { ? ? ? ? ? ? } ? ? ? ? }); ? ? } ? ? //定義ViewPager的適配器 ? ? class MyPagerAdapter extends PagerAdapter { ? ? ? ? //計(jì)算需要多少item顯示 ? ? ? ? @Override ? ? ? ? public int getCount() { ? ? ? ? ? ? return list.size(); ? ? ? ? } ? ? ? ? @Override ? ? ? ? public boolean isViewFromObject(View arg0, Object arg1) { ? ? ? ? ? ? return arg0 == arg1; ? ? ? ? } ? ? ? ? //初始化item實(shí)例方法 ? ? ? ? @Override ? ? ? ? public Object instantiateItem(ViewGroup container, int position) { ? ? ? ? ? ? container.addView(list.get(position)); ? ? ? ? ? ? return list.get(position); ? ? ? ? } ? ? ? ? //item銷毀的方法 ? ? ? ? @Override ? ? ? ? public void destroyItem(ViewGroup container, int position, Object object) { ? ? ? ? ? ? // 注銷父類銷毀item的方法,因?yàn)榇朔椒ú⒉皇鞘褂么朔椒? //?? ??? ??? ?super.destroyItem(container, position, object); ? ? ? ? ? ? container.removeView(list.get(position)); ? ? ? ? } ? ? } }
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Android自定義View實(shí)現(xiàn)簡單的圓形Progress效果
這篇文章主要介紹了Android自定義View實(shí)現(xiàn)簡單的圓形Progress效果的相關(guān)資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2016-09-09Android使用CountDownTimer模擬短信驗(yàn)證倒計(jì)時
這篇文章主要為大家詳細(xì)介紹了Android使用CountDownTimer模擬短信驗(yàn)證倒計(jì)時,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-07-07Android多線程+單線程+斷點(diǎn)續(xù)傳+進(jìn)度條顯示下載功能
這篇文章主要介紹了Android多線程+單線程+斷點(diǎn)續(xù)傳+進(jìn)度條顯示下載功能,需要的朋友可以參考下2017-06-06Android編程計(jì)算函數(shù)時間戳的相關(guān)方法總結(jié)
這篇文章主要介紹了Android編程計(jì)算函數(shù)時間戳的相關(guān)方法,結(jié)合實(shí)例形式總結(jié)分析了Android Java、Native、Kernel時間戳計(jì)算相關(guān)操作技巧,需要的朋友可以參考下2017-05-05android使用service和activity獲取屏幕尺寸的方法
這篇文章主要介紹了android使用service和activity獲取屏幕尺寸的方法,實(shí)例分析了基于service和activity兩種方法獲取屏幕尺寸的相關(guān)技巧,非常簡單實(shí)用,需要的朋友可以參考下2015-08-08Android基礎(chǔ)控件(EditView、SeekBar等)的使用方法
這篇文章主要介紹了Android基礎(chǔ)控件的屬性及使用方法,介紹了基礎(chǔ)控件有TextView、ImageView、Button、EditView等,感興趣的小伙伴們可以參考一下2016-03-03