package com.example.lege;
import java.util.ArrayList;
import java.util.List;
import imageurl.ImageUri;
import com.nostra13.universalimageloader.core.ImageLoader;
import com.nostra13.universalimageloader.core.ImageLoaderConfiguration;
import android.os.Bundle;
import android.os.Handler;
import android.app.Activity;
import android.support.v4.view.ViewPager;
import android.view.Menu;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnTouchListener;
import android.widget.ImageView;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.ImageView.ScaleType;
public class MainActivity extends Activity {
private ViewPager vp;
private RadioGroup rg;
private List<ImageView> mImageViewList;
private ImageLoader mLoader;
private Handler mHandler = new Handler() {
public void handleMessage(android.os.Message msg) {
// 翻页
vp.setCurrentItem(vp.getCurrentItem() + 1);
// 延迟调用
sendMessageDelay();
};
};
private void sendMessageDelay() {
//延迟执行翻页
mHandler.sendEmptyMessageDelayed(0, 2000);
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mLoader = ImageLoader.getInstance();
// 初始化ImageLoader
mLoader.init(ImageLoaderConfiguration.createDefault(this));
initViews();
// 延迟调用
sendMessageDelay();
}
private void initViews() {
vp = (ViewPager) findViewById(R.id.vp);
// 初始化圆点
initDots();
// 初始化imageview
initImageViews();
vp.setAdapter(new LoopAdapter(mImageViewList));
vp.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageSelected(int index) {
//页数指示器跟随动
rg.check(index % ImageUri.images.length);
}
@Override
public void onPageScrolled(int arg0, float arg1, int arg2) {
}
@Override
public void onPageScrollStateChanged(int arg0) {
}
});
}
private void initDots() {
//左边距参数
int wrap = RadioGroup.LayoutParams.WRAP_CONTENT;
RadioGroup.LayoutParams params = new RadioGroup.LayoutParams(wrap, wrap);
params.leftMargin = 5;
rg = (RadioGroup) findViewById(R.id.rg);
for (int i = 0; i < ImageUri.images.length; i++) {
RadioButton rb = new RadioButton(this);
rb.setId(i);
//设置button属性
rb.setButtonDrawable(R.drawable.x_dot_selector);
//如果是第一个时,不需要加左边距
if (i != 0) {
rg.addView(rb, params);
} else
rg.addView(rb);
}
rg.check(0);
}
private void initImageViews() {
mImageViewList = new ArrayList<ImageView>();
for (int i = 0; i < ImageUri.images.length; i++) {
// 创建ImageView
ImageView iv = new ImageView(this);
iv.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_DOWN) {
// 按下状态,停止播放
mHandler.removeCallbacksAndMessages(null);
}else if (event.getAction() == MotionEvent.ACTION_CANCEL) {
//取消时
sendMessageDelay();
}else if (event.getAction() == MotionEvent.ACTION_UP) {
//抬起时
sendMessageDelay();
}
return true;
}
});
iv.setScaleType(ScaleType.FIT_XY);
mLoader.displayImage(ImageUri.images[i], iv);
// 添加到list中
mImageViewList.add(iv);
}
}
}
import java.util.ArrayList;
import java.util.List;
import imageurl.ImageUri;
import com.nostra13.universalimageloader.core.ImageLoader;
import com.nostra13.universalimageloader.core.ImageLoaderConfiguration;
import android.os.Bundle;
import android.os.Handler;
import android.app.Activity;
import android.support.v4.view.ViewPager;
import android.view.Menu;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnTouchListener;
import android.widget.ImageView;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.ImageView.ScaleType;
public class MainActivity extends Activity {
private ViewPager vp;
private RadioGroup rg;
private List<ImageView> mImageViewList;
private ImageLoader mLoader;
private Handler mHandler = new Handler() {
public void handleMessage(android.os.Message msg) {
// 翻页
vp.setCurrentItem(vp.getCurrentItem() + 1);
// 延迟调用
sendMessageDelay();
};
};
private void sendMessageDelay() {
//延迟执行翻页
mHandler.sendEmptyMessageDelayed(0, 2000);
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mLoader = ImageLoader.getInstance();
// 初始化ImageLoader
mLoader.init(ImageLoaderConfiguration.createDefault(this));
initViews();
// 延迟调用
sendMessageDelay();
}
private void initViews() {
vp = (ViewPager) findViewById(R.id.vp);
// 初始化圆点
initDots();
// 初始化imageview
initImageViews();
vp.setAdapter(new LoopAdapter(mImageViewList));
vp.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageSelected(int index) {
//页数指示器跟随动
rg.check(index % ImageUri.images.length);
}
@Override
public void onPageScrolled(int arg0, float arg1, int arg2) {
}
@Override
public void onPageScrollStateChanged(int arg0) {
}
});
}
private void initDots() {
//左边距参数
int wrap = RadioGroup.LayoutParams.WRAP_CONTENT;
RadioGroup.LayoutParams params = new RadioGroup.LayoutParams(wrap, wrap);
params.leftMargin = 5;
rg = (RadioGroup) findViewById(R.id.rg);
for (int i = 0; i < ImageUri.images.length; i++) {
RadioButton rb = new RadioButton(this);
rb.setId(i);
//设置button属性
rb.setButtonDrawable(R.drawable.x_dot_selector);
//如果是第一个时,不需要加左边距
if (i != 0) {
rg.addView(rb, params);
} else
rg.addView(rb);
}
rg.check(0);
}
private void initImageViews() {
mImageViewList = new ArrayList<ImageView>();
for (int i = 0; i < ImageUri.images.length; i++) {
// 创建ImageView
ImageView iv = new ImageView(this);
iv.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_DOWN) {
// 按下状态,停止播放
mHandler.removeCallbacksAndMessages(null);
}else if (event.getAction() == MotionEvent.ACTION_CANCEL) {
//取消时
sendMessageDelay();
}else if (event.getAction() == MotionEvent.ACTION_UP) {
//抬起时
sendMessageDelay();
}
return true;
}
});
iv.setScaleType(ScaleType.FIT_XY);
mLoader.displayImage(ImageUri.images[i], iv);
// 添加到list中
mImageViewList.add(iv);
}
}
}

被折叠的 条评论
为什么被折叠?



