android的自动播放和伪无限循环的广告轮播实现

上次我们实现了android的ViewPager实现加载网络图片并自动轮播

gif

原文 android的自动播放和伪无限循环的广告轮播实现

这次我们剥离出代码, 自定义一个view来简单化。

源码可以在github上找到。

简单使用说明如下:

1, Application中初始化Fresco

1
2
3
4
5
6
7
8
public class App extends Application {
@Override
public void onCreate() {
super.onCreate();

Fresco.initialize(this); // init Fresco
}
}

2, 添加网络权限

1
<uses-permission android:name="android.permission.INTERNET"/>

3, Layout中定义

1
2
3
4
<com.qefee.pj.banner.view.BannerView
android:id="@+id/bannerView"
android:layout_width="match_parent"
android:layout_height="match_parent"/>

4, 代码中使用

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
public class MainActivity extends AppCompatActivity {
BannerView bannerView;

String[] imageUris = {
"https://pic4.zhimg.com/03b2d57be62b30f158f48f388c8f3f33_b.png",
"https://pic1.zhimg.com/4373a4f045e5e9ae16ebd6a624bf6228_b.png",
"https://pic2.zhimg.com/0364e17a1561f48793993d8bf1cdc785_b.png",
"https://pic2.zhimg.com/55fa74ff3eba164ed1db2037df1a8311_b.png",
"https://pic4.zhimg.com/5dc30569c06e7c6266c9809f6eb80a7b_b.jpg"
};

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

bannerView = (BannerView) findViewById(R.id.bannerView);
bannerView.init(imageUris);
}

@Override
protected void onResume() {
super.onResume();

bannerView.startAutoScroll(); // auto scroll when resume
}

@Override
protected void onPause() {
super.onPause();

bannerView.stopAutoScroll(); // stop scroll when pause
}
}
Fork me on GitHub