添加轮播图圆点
16lz
2021-01-26
public class MainActivity extends AppCompatActivity {
private PullToRefreshScrollView scrollView;
private ViewPager viewPager;
private ListView listView;
private List imageViews = new ArrayList<>();
private List points = new ArrayList<>();
private List bookList=new ArrayList<>();
private static int page = 0;
private MyAdapter myAdapter;
private MyHandler myHandler=new MyHandler();
private LinearLayout ll;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initViews();
//请求网络
getAdData();
myAdapter = new MyAdapter(MainActivity.this, bookList);
listView.setAdapter(myAdapter);
}
private void getAdData() {
HttpUtils httpUtils = HttpUtils.getHttpUtils();
httpUtils.get(HttpConifg.ad_url);
httpUtils.setHttpListener(new HttpUtils.HttpListener() {
private AdAdapter adAdapter;
@Override
public void getSuccess(String json) {
Gson gson = new Gson();
AdBean adBean = gson.fromJson(json, AdBean.class);
//轮播图数据
List list = adBean.getData();
//循环,加载图片---viewpager
for (int i = 0; i < list.size(); i++) {
ImageView imageView = new ImageView(MainActivity.this);
imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
String icon = list.get(i).getIcon();
//
ImageLoader.getInstance().displayImage(icon, imageView, MyApp.getOptions());
imageViews.add(imageView);
//添加小圆点
ImageView point = new ImageView(MainActivity.this);
point.setImageResource(R.drawable.my_selector);
points.add(point);
ll.addView(point);
}
//默认第一个选中
points.get(0).setSelected(true);
//适配器
adAdapter = new AdAdapter(imageViews);
viewPager.setAdapter(adAdapter);
//发送消息,开始轮播
myHandler.sendEmptyMessageDelayed(0,2000);
//请求书籍列表
getBookList();
}
});
}
private void initViews() {
ll = findViewById(R.id.ll);
scrollView = findViewById(R.id.pull_to_refresh_scrollview);
viewPager = findViewById(R.id.viewpager);
listView = findViewById(R.id.listview);
//
scrollView.setMode(PullToRefreshBase.Mode.BOTH);
scrollView.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener2() {
@Override
public void onPullDownToRefresh(PullToRefreshBase refreshView) {
page=1;
getBookList();
}
@Override
public void onPullUpToRefresh(PullToRefreshBase refreshView) {
page++;
getBookList();
}
});
}
public void getBookList() {
HttpUtils httpUtils = HttpUtils.getHttpUtils();
httpUtils.get(HttpConifg.books_url+"?page="+page);
httpUtils.setHttpListener(new HttpUtils.HttpListener() {
@Override
public void getSuccess(String json) {
Gson gson = new Gson();
BookBean bookBean = gson.fromJson(json, BookBean.class);
List bookList1 = bookBean.getData();
if (page==1){
bookList.clear();
}
bookList.addAll(bookList1);
myAdapter.notifyDataSetChanged();
scrollView.onRefreshComplete();
}
});
}
//使用Handler进行轮播
class MyHandler extends Handler{
@Override
public void handleMessage(Message msg) {
viewPager.setCurrentItem(viewPager.getCurrentItem()+1);
//切换小圆点
for (int i = 0; i < points.size(); i++) {
int j = viewPager.getCurrentItem();
j= j%points.size();
if (i==j){
points.get(i).setSelected(true);
}else {
points.get(i).setSelected(false);
}
}
myHandler.sendEmptyMessageDelayed(0,2000);
}
}
@Override
protected void onDestroy() {
super.onDestroy();
myHandler.removeCallbacksAndMessages(null);
}
}
private PullToRefreshScrollView scrollView;
private ViewPager viewPager;
private ListView listView;
private List
private List
private List
private static int page = 0;
private MyAdapter myAdapter;
private MyHandler myHandler=new MyHandler();
private LinearLayout ll;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initViews();
//请求网络
getAdData();
myAdapter = new MyAdapter(MainActivity.this, bookList);
listView.setAdapter(myAdapter);
}
private void getAdData() {
HttpUtils httpUtils = HttpUtils.getHttpUtils();
httpUtils.get(HttpConifg.ad_url);
httpUtils.setHttpListener(new HttpUtils.HttpListener() {
private AdAdapter adAdapter;
@Override
public void getSuccess(String json) {
Gson gson = new Gson();
AdBean adBean = gson.fromJson(json, AdBean.class);
//轮播图数据
List list = adBean.getData();
//循环,加载图片---viewpager
for (int i = 0; i < list.size(); i++) {
ImageView imageView = new ImageView(MainActivity.this);
imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
String icon = list.get(i).getIcon();
//
ImageLoader.getInstance().displayImage(icon, imageView, MyApp.getOptions());
imageViews.add(imageView);
//添加小圆点
ImageView point = new ImageView(MainActivity.this);
point.setImageResource(R.drawable.my_selector);
points.add(point);
ll.addView(point);
}
//默认第一个选中
points.get(0).setSelected(true);
//适配器
adAdapter = new AdAdapter(imageViews);
viewPager.setAdapter(adAdapter);
//发送消息,开始轮播
myHandler.sendEmptyMessageDelayed(0,2000);
//请求书籍列表
getBookList();
}
});
}
private void initViews() {
ll = findViewById(R.id.ll);
scrollView = findViewById(R.id.pull_to_refresh_scrollview);
viewPager = findViewById(R.id.viewpager);
listView = findViewById(R.id.listview);
//
scrollView.setMode(PullToRefreshBase.Mode.BOTH);
scrollView.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener2
@Override
public void onPullDownToRefresh(PullToRefreshBase
page=1;
getBookList();
}
@Override
public void onPullUpToRefresh(PullToRefreshBase
page++;
getBookList();
}
});
}
public void getBookList() {
HttpUtils httpUtils = HttpUtils.getHttpUtils();
httpUtils.get(HttpConifg.books_url+"?page="+page);
httpUtils.setHttpListener(new HttpUtils.HttpListener() {
@Override
public void getSuccess(String json) {
Gson gson = new Gson();
BookBean bookBean = gson.fromJson(json, BookBean.class);
List
if (page==1){
bookList.clear();
}
bookList.addAll(bookList1);
myAdapter.notifyDataSetChanged();
scrollView.onRefreshComplete();
}
});
}
//使用Handler进行轮播
class MyHandler extends Handler{
@Override
public void handleMessage(Message msg) {
viewPager.setCurrentItem(viewPager.getCurrentItem()+1);
//切换小圆点
for (int i = 0; i < points.size(); i++) {
int j = viewPager.getCurrentItem();
j= j%points.size();
if (i==j){
points.get(i).setSelected(true);
}else {
points.get(i).setSelected(false);
}
}
myHandler.sendEmptyMessageDelayed(0,2000);
}
}
@Override
protected void onDestroy() {
super.onDestroy();
myHandler.removeCallbacksAndMessages(null);
}
}
更多相关文章
- RadioGroup&RadioButton小技巧
- 猜红心小游戏
- Android(安卓)Studio 蓝牙配对
- 自定义数据适配器
- Android(安卓)仿京东分类页面
- listview check
- android修改默认桌面
- 简单适配器加载列表
- Android(安卓)淘宝购物车细节详情