常用的无限轮播封装 使用简单
GitHub:点此下载
使用方法:
默认使用ImageLoad加载图片 需要导ImageLoad包
Demo:
主Activity
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.Button;
import android.widget.ImageButton;
import com.nostra13.universalimageloader.core.DisplayImageOptions;
import com.nostra13.universalimageloader.core.ImageLoader;
import com.nostra13.universalimageloader.core.ImageLoaderConfiguration;
import java.util.ArrayList;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
String url1 = "http://d.hiphotos.baidu.com/zhidao/pic/item/0bd162d9f2d3572cc2a9e4a08d13632762d0c307.jpg";
String url2 = "http://img4.duitang.com/uploads/item/201306/14/20130614172851_WmMCE.thumb.600_0.jpeg";
String url3 = "http://imgsrc.baidu.com/forum/pic/item/d62a6059252dd42a0d08194d033b5bb5c8eab8d6.jpg";
String url4 = "http://img4q.duitang.com/uploads/item/201311/09/20131109163244_HUT5C.jpeg";
ArrayList<String> list = new ArrayList<String>();
list.add(url1);
list.add(url2);
list.add(url3);
list.add(url4);
Infinite_View_Pager vp = (Infinite_View_Pager) findViewById(R.id.vp_);
vp.set_img_url(list,R.drawable.one);
vp.start_auto_play();
}
}
XML布局
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="zhangdake.bawei.com.testmys.MainActivity">
<zhangdake.bawei.com.testmys.Infinite_View_Pager
android:id="@+id/vp_"
android:layout_width="match_parent"
android:layout_height="match_parent"></zhangdake.bawei.com.testmys.Infinite_View_Pager>
</RelativeLayout>
初始化ImageLoad在Application中
import android.app.Application; import com.nostra13.universalimageloader.core.DisplayImageOptions; import com.nostra13.universalimageloader.core.ImageLoader; import com.nostra13.universalimageloader.core.ImageLoaderConfiguration; public class MyApp extends Application{ @Override public void onCreate() { super.onCreate(); ImageLoaderConfiguration configuration = new ImageLoaderConfiguration.Builder(MyApp.this).memoryCacheSizePercentage(20).discCacheFileCount(1000).discCacheSize(5 * 1024 * 1024).defaultDisplayImageOptions(getOptions()).memoryCacheExtraOptions(480, 800).build(); ImageLoader imageLoader = ImageLoader.getInstance(); imageLoader.init(configuration); } public DisplayImageOptions getOptions(){ com.nostra13.universalimageloader.core.DisplayImageOptions options = new DisplayImageOptions.Builder().cacheOnDisc(true).showImageOnLoading(R.mipmap.ic_launcher) .showImageForEmptyUri(R.mipmap.ic_launcher).cacheInMemory(true).build(); return options; } }
Shape选择器
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_selected="true" android:drawable="@drawable/three"></item>
<item android:drawable="@drawable/two"></item>
</selector>
引用的Shape two
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval">
<size android:height="10dp" android:width="10dp"></size>
<solid android:color="#FFFFFF"></solid>
</shape>
引用的Shape three
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval">
<size android:height="10dp" android:width="10dp"></size>
<solid android:color="@color/colorAccent"></solid>
</shape>
实际效果:
就是这样 喜欢其它功能的 自己动手改吧