【移動(dòng)應(yīng)用開發(fā)技術(shù)】Android客戶端首次啟動(dòng)引導(dǎo)界面的示例分析_第1頁
【移動(dòng)應(yīng)用開發(fā)技術(shù)】Android客戶端首次啟動(dòng)引導(dǎo)界面的示例分析_第2頁
【移動(dòng)應(yīng)用開發(fā)技術(shù)】Android客戶端首次啟動(dòng)引導(dǎo)界面的示例分析_第3頁
【移動(dòng)應(yīng)用開發(fā)技術(shù)】Android客戶端首次啟動(dòng)引導(dǎo)界面的示例分析_第4頁
【移動(dòng)應(yīng)用開發(fā)技術(shù)】Android客戶端首次啟動(dòng)引導(dǎo)界面的示例分析_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費(fèi)閱讀

付費(fèi)下載

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

【移動(dòng)應(yīng)用開發(fā)技術(shù)】Android客戶端首次啟動(dòng)引導(dǎo)界面的示例分析

<?xml

version="1.0"

encoding="utf-8"?>

<RelativeLayout

xmlns:android="/apk/res/android"

android:layout_width="match_parent"

android:layout_height="match_parent"

android:orientation="vertical"

>

<android.support.v4.view.ViewPager

android:id="@+id/viewpager"

android:layout_width="match_parent"

android:layout_height="match_parent"

/>

<LinearLayout

android:id="@+id/ll"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_alignParentBottom="true"

android:layout_centerHorizontal="true"

android:layout_marginBottom="24.0dp"

android:orientation="horizontal"

>

<ImageView

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_gravity="center_vertical"

android:clickable="true"

android:padding="15.0dip"

android:src="@drawable/dot"

/>

<ImageView

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_gravity="center_vertical"

android:clickable="true"

android:padding="15.0dip"

android:src="@drawable/dot"

/>

<ImageView

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_gravity="center_vertical"

android:clickable="true"

android:padding="15.0dip"

android:src="@drawable/dot"

/>

<ImageView

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_gravity="center_vertical"

android:clickable="true"

android:padding="15.0dip"

android:src="@drawable/dot"

/>

</LinearLayout>

</RelativeLayout>package

com.example.yasin.ndklearn;

import

android.content.Intent;

import

android.content.SharedPreferences;

import

android.support.v7.app.AppCompatActivity;

import

android.os.Bundle;

import

java.util.ArrayList;

import

java.util.List;

import

android.app.Activity;

import

android.os.Bundle;

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.widget.ImageView;

import

android.widget.LinearLayout;

import

android.widget.RelativeLayout;

/**

*

*

@{#

GuideActivity.java

Create

on

2013-5-2

下午10:59:08

*

*

class

desc:

引導(dǎo)界面

*

*

<p>

*

Copyright:

Copyright(c)

2013

*

</p>

*

@Version

1.0

*

@Author

<a

href="mailto:gaolei_xj@163.com">Leo</a>

*

*

*/

public

class

GuideActivity

extends

AppCompatActivity

implements

OnPageChangeListener

{

private

ViewPager

vp;

private

ViewPagerAdapter

vpAdapter;

private

List<View>

views;

//

底部小點(diǎn)圖片

private

ImageView[]

dots;

//

記錄當(dāng)前選中位置

private

int

currentIndex;

Boolean

isFirst;

@Override

protected

void

onCreate(Bundle

savedInstanceState)

{

super.onCreate(savedInstanceState);

setContentView(R.layout.guide_layout);

//

初始化頁面

initViews();

//

初始化底部小點(diǎn)

initDots();

}

private

void

initViews()

{

SharedPreferences

pref

=

getSharedPreferences("first",Activity.MODE_PRIVATE);

isFirst

=

pref.getBoolean("status",true);

if(!isFirst){

Intent

intent

=

new

Intent(this,MainActivity.class);

startActivity(intent);

finish();

}

LayoutInflater

inflater

=

LayoutInflater.from(this);

RelativeLayout

guideFour

=

(RelativeLayout)

inflater.inflate(R.layout.guide_four,

null);

guideFour.findViewById(R.id.toMain).setOnClickListener(new

View.OnClickListener()

{

@Override

public

void

onClick(View

v)

{

Intent

intent

=

new

Intent(GuideActivity.this,MainActivity.class);

startActivity(intent);

finish();

}

});

views

=

new

ArrayList<View>();

//

初始化引導(dǎo)圖片列表

views.add(inflater.inflate(R.layout.guide_one,

null));

views.add(inflater.inflate(R.layout.guide_two,

null));

views.add(inflater.inflate(R.layout.guide_three,

null));

views.add(guideFour);

//

初始化Adapter

vpAdapter

=

new

ViewPagerAdapter(views,

this);

vp

=

(ViewPager)

findViewById(R.id.viewpager);

vp.setAdapter(vpAdapter);

//

綁定回調(diào)

vp.setOnPageChangeListener(this);

}

private

void

initDots()

{

LinearLayout

ll

=

(LinearLayout)

findViewById(R.id.ll);

dots

=

new

ImageView[views.size()];

//

循環(huán)取得小點(diǎn)圖片

for

(int

i

=

0;

i

<

views.size();

i++)

{

dots[i]

=

(ImageView)

ll.getChildAt(i);

dots[i].setEnabled(true);//

都設(shè)為灰色

}

currentIndex

=

0;

dots[currentIndex].setEnabled(false);//

設(shè)置為白色,即選中狀態(tài)

}

private

void

setCurrentDot(int

position)

{

if

(position

<

0

||

position

>

views.size()

-

1

||

currentIndex

==

position)

{

return;

}

dots[position].setEnabled(false);

dots[currentIndex].setEnabled(true);

currentIndex

=

position;

}

//

當(dāng)滑動(dòng)狀態(tài)改變時(shí)調(diào)用

@Override

public

void

onPageScrollStateChanged(int

arg0)

{

}

//

當(dāng)當(dāng)前頁面被滑動(dòng)時(shí)調(diào)用

@Override

public

void

onPageScrolled(int

arg0,

float

arg1,

int

arg2)

{

}

//

當(dāng)新的頁面被選中時(shí)調(diào)用

@Override

public

void

onPageSelected(int

arg0)

{

//

設(shè)置底部小點(diǎn)選中狀態(tài)

setCurrentDot(arg0);

}

}package

com.example.yasin.ndklearn;

import

android.app.Activity;

import

android.content.Context;

import

android.content.Intent;

import

android.content.SharedPreferences;

import

android.os.Parcelable;

import

android.support.v4.view.PagerAdapter;

import

android.support.v4.view.ViewPager;

import

android.support.v7.app.AppCompatActivity;

import

android.view.View;

import

android.view.ViewGroup;

import

android.widget.ImageView;

import

java.util.List;

/**

*

Created

by

Yasin

on

2016/3/2.

*

*

*

@{#

ViewPagerAdapter.java

Create

on

2013-5-2

下午11:03:39

*

*

class

desc:

引導(dǎo)頁面適配器

*

*

<p>

*

Copyright:

Copyright(c)

2013

*

</p>

*

@Version

1.0

*

@Author

<a

href="mailto:gaolei_xj@163.com">Leo</a>

*

*

*/

public

class

ViewPagerAdapter

extends

PagerAdapter

{

//

界面列表

private

List<View>

views;

private

AppCompatActivity

activity;

public

ViewPagerAdapter(List<View>

views,

AppCompatActivity

activity)

{

this.views

=

views;

this.activity

=

activity;

}

//加載viewpager的

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論