Android开发---简易好用的轮播器
来源:互联网 发布:台湾也用淘宝吗 编辑:程序博客网 时间:2024/06/01 16:48
注意:请从Git上下载flybanner,并放入某个package中!
步骤:
1. Drawable
<?xml version="1.0" encoding="utf-8"?><selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:state_enabled="true"> <shape android:shape="oval"> <size android:width="6dp" android:height="6dp" /> <solid android:color="@android:color/white" /> </shape> </item> <item> <shape android:shape="oval"> <size android:width="6dp" android:height="6dp" /> <solid android:color="#ddd" /> </shape> </item></selector>
2. Values
<!--轮播--><declare-styleable name="FlyBanner"> <attr name="points_visibility" format="boolean"/> <attr name="points_position" format="enum"> <enum name="CENTER" value="0"/> <enum name="LEFT" value="1"/> <enum name="RIGHT" value="2"/> </attr> <attr name="points_container_background" format="reference|color"/></declare-styleable>
3.导入picasso包
4.XML
<flybanner.FlyBanner android:id="@id/fl_banner" android:layout_width="match_parent" android:layout_height="150dp" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" android:layout_alignParentTop="true" />
*****设置背景:
<FrameLayout android:id="@+id/fl_banner" android:layout_width="match_parent" android:layout_height="150dp" android:background="@mipmap/banner_bg" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" android:layout_alignParentTop="true"> <flybanner.FlyBanner android:id="@+id/fly_banner" android:layout_width="match_parent" android:layout_height="150dp" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" android:layout_alignParentTop="true" /></FrameLayout>
5.java
示例:
(1)加载本地图片
FlyBanner mBannerLocal;
/** /* * 加载本地图片 */private void initLocalBanner() { mBannerLocal = (FlyBanner)mView.findViewById(R.id.fl_banner); List<Integer> images = new ArrayList<>(); images.add(R.mipmap.banner1); images.add(R.mipmap.banner2); mBannerLocal.setImages(images); mBannerLocal.setOnItemClickListener(new FlyBanner.OnItemClickListener() { @Override public void onItemClick(int position) { Utils.showToast("点击了第"+position+"张图片"); } });}
(2)加载网络图片
/** * 加载网页图片 */private void initNetBanner() { mBannerLocal = (FlyBanner) mView.findViewById(R.id.fl_banner); List<String> imgesUrl = new ArrayList<>(); //for (int i = 0; i < mImagesUrl.length; i++) { // imgesUrl.add(mImagesUrl[i]); //} String url1 = "http://img2.imgtn.bdimg.com/it/u=3176420603,2152246847&fm=214&gp=0.jpg"; String url2 = "http://img5.imgtn.bdimg.com/it/u=3549708773,313146732&fm=23&gp=0.jpg"; imgesUrl.add(url1); imgesUrl.add(url2); mBannerLocal.setImagesUrl(imgesUrl); mBannerLocal.setOnItemClickListener(new FlyBanner.OnItemClickListener() { @Override public void onItemClick(int position) { Utils.showToast("点击了第" + position + "张图片"); } });}
6.github说明
Config in java
/**
*
加载本地图片
*/
private void initLocalBanner() {
mBannerLocal = (FlyBanner) findViewById(R.id.banner_1);
List<Integer> images = new ArrayList<>();
images.add(R.drawable.img_1);
images.add(R.drawable.img_2);
images.add(R.drawable.img_3);
images.add(R.drawable.img_4);
mBannerLocal.setImages(images);
mBannerLocal.setOnItemClickListener(new FlyBanner.OnItemClickListener() {
@Override
public void onItemClick(int position) {
toast("
点击了第
"+position+"
张图片
");
}
});
}
/**
*
加载网页图片
*/
private void initNetBanner() {
mBannerNet = (FlyBanner) findViewById(R.id.banner_2);
List<String> imgesUrl = new ArrayList<>();
for (int i = 0; i < mImagesUrl.length; i++) {
imgesUrl.add(mImagesUrl[i]);
}
mBannerNet.setImagesUrl(imgesUrl);
mBannerNet.setOnItemClickListener(new FlyBanner.OnItemClickListener() {
@Override
public void onItemClick(int position) {
toast("
点击了第
" + position + "
张图片
");
}
});
}
xml参数说明:
参数
说明
类型
points_visibility
指示器是否可见
boolean
points_position
指示器位置(左,中,右)
int
points_container_background
指示器容器背景
Drawable
方法说明:
方法
参数
说明
setPointsIsVisible
isVisible
指示器是否可见
setPoinstPosition
position
指示器位置(左,中,右)
注意:setImageUrl 设置轮播图片的地址
- Android开发---简易好用的轮播器
- Android传感器的使用开发、简易指南针
- Android传感器的使用开发、简易指南针
- Eclipse开发简易的Android服务器
- 好的Android开发习惯
- 好的android开发习惯
- android开发简易浏览器
- Android开发好用的字符串处理工具
- Android 开发一些好用的第三方包
- android开发一些好用的小知识
- Android开发中一些好用的小工具
- android开发中一些好用的知识总结
- Android 开发中比较好用的库
- 用C开发一个简易的webserver
- 用vb.net开发的简易服务器
- Android开发的欢迎界面制作的简易教程
- php开发app接口之android端的简易实现
- Android开发笔记之简易画画板的制作
- 常见数据库常用数据类型、默认端口
- Lesson 3:复合类型
- java基础:Java Reflection
- es 常用查询介绍
- 非关系型数据库redis(二):Redis配置
- Android开发---简易好用的轮播器
- JDK、JRE、JVM三者间的关系
- ios计算文本的宽高
- Android工具类搜集
- node.js池操作
- 在xib上给UIView添加边框或圆角
- web.xml中log4j配置注意点
- [编程语言][C语言]指针与地址
- 云端观察:Joe Weinman的云经济学究竟在讲什么?