package com.sl.house_property; import android.app.Activity; import android.content.Intent; import android.graphics.Bitmap; import android.os.Bundle; import android.os.Handler; import android.os.Message; import android.support.v4.view.ViewPager; import android.util.Log; import android.view.GestureDetector; import android.view.LayoutInflater; import android.view.MotionEvent; import android.view.View; import android.widget.ImageView; import java.util.ArrayList; import adapter.StartViewpagerAdapter; import tools.Config; import utils.ConfigTitiles; import utils.SetBigMap; /*gradlew compileDebug --stacktrace*/ /*gradlew compileDebugSources --stacktrace -info*/ public class MainActivity extends Activity { private GestureDetector mGestureDetector; private float FLING_MIN_DISTANCE = 70;//手势滑动 public float FLING_MIN_VELOCITY = 20; private ViewPager welcomepage; private ImageView point1; private ImageView point2; // private ImageView point3; public double getPagerScroCHaged() { return pagerScroCHaged;} public void setPagerScroCHaged(double pagerScroCHaged) { this.pagerScroCHaged = pagerScroCHaged; } private double pagerScroCHaged = 0.0; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Log.d("Main","main"); onceOrNot(); } private Handler mHandler = new Handler() { @Override public void handleMessage(Message msg) { super.handleMessage(msg); switch (msg.what) { case 20000: if (welcomepage.getCurrentItem() == 1) { startActivity(new Intent( MainActivity.this,LogoActivity.class)); finish(); } break; } } }; private void onceOrNot() { // TODO Auto-generated method stub int once = Config.getInstance(MainActivity.this).getInt(ConfigTitiles.ONCEORNOT, 0); if (once == 0) { Config.getInstance(getApplicationContext()).put(ConfigTitiles.ONCEORNOT, 1); onceStart(); return; } else { //onceStart(); otherStart(); return; } } private void onceStart() { // TODO Auto-generated method stub mGestureDetector = new GestureDetector(this, new GestureDetector.SimpleOnGestureListener() { public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) { if (e1.getX() - e2.getX() > FLING_MIN_DISTANCE && Math.abs(velocityX) > FLING_MIN_VELOCITY) {// move to left { if (Math.abs(e1.getX() - e2.getX()) > Math.abs(e1.getY() - e2.getY())) { if ((welcomepage.getCurrentItem() == 1) && (getPagerScroCHaged() == 0.0)) { Message msg = new Message(); msg.what = 20000; mHandler.sendMessage(msg); return true; } //TODO 左滑动 } else if (e2.getX() - e1.getX() > FLING_MIN_DISTANCE && Math.abs(velocityX) > FLING_MIN_VELOCITY) { if (Math.abs(e1.getX() - e2.getX()) > Math.abs(e1.getY() - e2.getY())) { return false; } } } // TODO 右滑动 } else { return false; } return false; } }); point1 = (ImageView) findViewById(R.id.point1); point2 = (ImageView) findViewById(R.id.point2); //point3 = (ImageView) findViewById(R.id.point3); welcomepage = (ViewPager) findViewById(R.id.startPager); LayoutInflater inflater = getLayoutInflater(); View view1 = inflater.inflate(R.layout.welcome_image, null); ImageView image1 = (ImageView) view1.findViewById(R.id.myImage); /* DisplayImageOptions options0 = new DisplayImageOptions.Builder() .cacheInMemory(true) .cacheOnDisk(true) .displayer(new CircleDisplayer()) .showImageForEmptyUri(R.drawable.ice_test_person) .showImageOnFail(R.drawable.ice_test_person) .showImageOnLoading(R.drawable.ic_circle_progress_imageloading) .build(); ImageLoader.getInstance().*/ Bitmap bitmap= SetBigMap.readBitMap(MainActivity.this,R.mipmap.bg); image1.setImageBitmap(bitmap); View view2 = inflater.inflate(R.layout.welcome_image, null); final ImageView image2 = (ImageView) view2.findViewById(R.id.myImage); image2.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { startActivity(new Intent(MainActivity.this, LogoActivity.class)); finish(); } }); ArrayList viewlist = new ArrayList(); viewlist.add(view1); viewlist.add(view2); new Runnable(){ @Override public void run() { Bitmap bitmap2= SetBigMap.readBitMap(MainActivity.this,R.mipmap.bg); image2.setImageBitmap(bitmap2); } }.run(); StartViewpagerAdapter adapter = new StartViewpagerAdapter(viewlist); welcomepage.setAdapter(adapter); welcomepage.setOnPageChangeListener(new ViewPager.OnPageChangeListener() { @Override public void onPageSelected(int arg0) { // TODO Auto-generated method stub switch (arg0) { case 0: point1.setAlpha(1.0F); point2.setAlpha(0.5F); //point3.setAlpha(0.5F); break; case 1: point2.setAlpha(1.0F); point1.setAlpha(0.5F); //point3.setAlpha(0.5F); break; /* case 2: point3.setAlpha(1.0F); point2.setAlpha(0.5F); //point1.setAlpha(0.5F); break;*/ } /* Message message = new Message(); message.what =arg0; handler.sendMessageDelayed(message,2000);*/ } @Override public void onPageScrolled(int arg0, float arg1, int arg2) { // TODO Auto-generated method stub pagerScroCHaged = arg0;//pagerScroCHagedarg0 :当前页面,及你点击滑动的页面 //arg1:当前页面偏移的百分比 //arg2:当前页面偏移的像素位置 setPagerScroCHaged(arg1); } @Override public void onPageScrollStateChanged(int arg0) { // TODO Auto-generated method stub } }); } private void otherStart() { // TODO Auto-generated method stub Intent intent = new Intent( MainActivity.this, LogoActivity.class); startActivity(intent); finish(); } @Override public boolean dispatchTouchEvent(MotionEvent ev) {//分发事件 super.dispatchTouchEvent(ev); //productGestureDetector 是 GestureDetector对象 return mGestureDetector.onTouchEvent(ev); } }