Android引导页

来源:互联网 发布:java工作流activity 编辑:程序博客网 时间:2024/06/04 19:40

1.Android引导页简单的实现方法之一,以后有新的方法在更新


2.主要逻辑实现,部分代码粘贴,需要的直接下载完整代码

package com.example.androidbootpage;import com.shizhenjie.tool.ILauncherView;import com.shizhenjie.tool.LauncherPagerAdapter;import android.content.Intent;import android.content.SharedPreferences;import android.os.Bundle;import android.support.v4.app.FragmentActivity;import android.support.v4.view.ViewPager;import android.support.v4.view.ViewPager.OnPageChangeListener;import android.view.View;import android.view.ViewGroup;import android.view.ViewGroup.LayoutParams;import android.view.Window;import android.widget.ImageView;import android.widget.LinearLayout;import android.widget.TextView;public class MainActivity extends FragmentActivity implements ILauncherView {private ViewPager viewpagerLauncher;private LauncherPagerAdapter adapter;private ImageView[] tips;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);requestWindowFeature(Window.FEATURE_NO_TITLE);setContentView(R.layout.activity_main);if (!isFirst()) {gotoMain();}viewpagerLauncher = (ViewPager) findViewById(R.id.viewpager_launcher);adapter = new LauncherPagerAdapter(this, this);viewpagerLauncher.setOffscreenPageLimit(2);viewpagerLauncher.setCurrentItem(0);viewpagerLauncher.setOnPageChangeListener(changeListener);viewpagerLauncher.setAdapter(adapter);ViewGroup group = (ViewGroup) findViewById(R.id.viewGroup);// 初始化底部显示控件tips = new ImageView[4];for (int i = 0; i < tips.length; i++) {ImageView imageView = new ImageView(this);if (i == 0) {imageView.setBackgroundResource(R.drawable.page_indicator_focused);} else {imageView.setBackgroundResource(R.drawable.page_indicator_unfocused);}tips[i] = imageView;LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(new ViewGroup.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));layoutParams.leftMargin = 10;// 设置点点点view的左边距layoutParams.rightMargin = 10;// 设置点点点view的右边距group.addView(imageView, layoutParams);}}private OnPageChangeListener changeListener = new OnPageChangeListener() {@Overridepublic void onPageScrollStateChanged(int arg0) {}@Overridepublic void onPageScrolled(int arg0, float arg1, int arg2) {}@Overridepublic void onPageSelected(int index) {setImageBackground(index);// 改变点点点的切换效果TextView tvStartHeadlines = (TextView) adapter.getViews().get(index).findViewById(R.id.tv_start_headlines);if (index == tips.length - 1) {// 最后一个tvStartHeadlines.setVisibility(View.VISIBLE);} else {tvStartHeadlines.setVisibility(View.INVISIBLE);}}};/** * 改变点点点的切换效果 *  * @param selectItems */private void setImageBackground(int selectItems) {for (int i = 0; i < tips.length; i++) {if (i == selectItems) {tips[i].setBackgroundResource(R.drawable.page_indicator_focused);} else {tips[i].setBackgroundResource(R.drawable.page_indicator_unfocused);}}}@Overridepublic void gotoMain() {Intent intent = new Intent(this, FirstActivity.class);startActivity(intent);finish();}private boolean isFirst() {SharedPreferences setting = getSharedPreferences("headlines", 0);Boolean user_first = setting.getBoolean("FIRST", true);if (user_first) {// 第一次return true;} else {return false;}}}
3.代码下载地址:http://download.csdn.net/detail/qq_31546677/9898889