• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >Android > Android中使用开源框架android-image-indicator实现图片轮播部署,

Android中使用开源框架android-image-indicator实现图片轮播部署,

作者:网友 字体:[增加 减小] 来源:互联网 时间:2017-05-26

网友通过本文主要向大家介绍了android轮播图框架,android 图片轮播框架,android 轮播框架,android 广告轮播框架,android开源框架等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

Android中使用开源框架android-image-indicator实现图片轮播部署,


之前的博文中有介绍关于图片轮播的实现方式,分别为(含超链接):

1、《Android中使用ViewFlipper实现屏幕切换》

2、《Android中使用ViewPager实现屏幕页面切换和页面轮播效果》

3、《Android中使用ImageViewSwitcher实现图片切换轮播导航效果》

今天通过使用GitHub中的开源项目android-image-indicator来简单实现APP自带图片的轮播以及加载网络图片进行轮播。

一、从GitHub上下载项目

GitHub地址:https://github.com/panxw/android-image-indicator

其中介绍了简单的使用示例,大家可以看看

二、导入依赖包

(1)我尝试使用AndroidStudio2,2通过Import Module来导入下载文件中的library来导入依赖包,但本次下载的项目使用Maven来构建,

导入过程出现错误提示:Error:(2, 0) Plugin with id‘com.github.dcendents.Android-maven’ not found。尝试了多种解决方案,无法有效解决依赖包导入问题。建议使用第二种方法导入

(2)在build.gradle(Module.app)中dependencies下直接添加以下代码

1 compile 'com.panxw.imageindicator:library:1.0.2'
添加示例如下: 添加完后,点击界面上的提示,同步以下就好。

三、演示加载APP自带图片

(1)Layout布局文件如下:

 1 <?xml version="1.0" encoding="utf-8"?>
 2 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
 3     xmlns:tools="http://schemas.android.com/tools"
 4     android:id="@+id/activity_main"
 5     android:layout_width="match_parent"
 6     android:layout_height="match_parent"
 7     tools:context="com.mly.panhouye.demo.MainActivity">
 8     <com.panxw.android.imageindicator.ImageIndicatorView
 9         android:id="@+id/indicate_view"
10         android:layout_width="match_parent"
11         android:layout_height="match_parent">
12     </com.panxw.android.imageindicator.ImageIndicatorView>
13 </RelativeLayout>

(2)Java实现代码如下:

 1 package com.mly.panhouye.demo;
 2 import android.os.Bundle;
 3 import android.support.v7.app.AppCompatActivity;
 4 import com.panxw.android.imageindicator.AutoPlayManager;
 5 import com.panxw.android.imageindicator.ImageIndicatorView;
 6 import java.util.ArrayList;
 7 import java.util.List;
 8 
 9 public class MainActivity extends AppCompatActivity {
10     ImageIndicatorView indicate_view;
11     @Override
12     protected void onCreate(Bundle savedInstanceState) {
13         super.onCreate(savedInstanceState);
14         setContentView(R.layout.activity_main);
15         indicate_view = (ImageIndicatorView) findViewById(R.id.indicate_view);
16         local();
17     }
18     //系统本地图片加载
19     public void local() {
20         // 声明一个数组, 指定图片的ID
21         final Integer[] resArray = new Integer[] {R.mipmap.a1, R.mipmap.a2,
22                     R.mipmap.a3, R.mipmap.a4};
23         // 把数组交给图片展播组件
24         indicate_view.setupLayoutByDrawable(resArray);
25         // 展播的风格
26 //        indicate_view.setIndicateStyle(ImageIndicatorView.INDICATE_ARROW_ROUND_STYLE);
27         indicate_view.setIndicateStyle(ImageIndicatorView.INDICATE_USERGUIDE_STYLE);
28         // 显示组件
29         indicate_view.show();
30         final AutoPlayManager autoBrocastManager = new AutoPlayManager(indicate_view);
31         //设置开启自动广播
32         autoBrocastManager.setBroadcastEnable(true);
33         //autoBrocastManager.setBroadCastTimes(5);//loop times
34         //设置开始时间和间隔时间
35         autoBrocastManager.setBroadcastTimeIntevel(3000, 3000);
36         //设置循环播放
37         autoBrocastManager.loop();
38     }
39 }

四、加载网络图片

(1)首先在Java中自定义NetworkImageIndicatorView.class

其中在加载网络图片到imageView中使用了网络通信框架-VolLey。这里主要使用其中的ImageRequest,

ImageRequest的构造函数接收六个参数,分别代表的含义是:

第一个参数就是图片的URL地址,这个没什么需要解释的。

第二个参数是图片请求成功的回调,这里我们把返回的Bitmap参数设置到ImageView中。

第三第四个参数分别用于指定允许图片最大的宽度和高度,如果指定的网络图片的宽度或高度大于这里的最大值,则会对图片进行压缩,指定成0的话就表示不管图片有多大,都不会进行压缩。

第五个参数用于指定图片的颜色属性,Bitmap.Config下的几个常量都可以在这里使用,其中ARGB_8888可以展示最好的颜色属性,每个图片像素占据4个字节的大小,而RGB_565则表示每个图片像素占据2个字节大小。

第六个参数是图片请求失败的回调,这里我们当请求失败时在ImageView中显示一张默认图片。

 1 package com.mly.panhouye.demo;
 2 import android.content.Context;
 3 import android.graphics.Bitmap;
 4 import android.util.AttributeSet;
 5 import android.widget.ImageView;
 6 import com.android.volley.RequestQueue;
 7 import com.android.volley.Response;
 8 import com.android.volley.VolleyError;
 9 import com.android.volley.toolbox.ImageRequest;
10 import com.android.volley.toolbox.Volley;
11 import com.panxw.android.imageindicator.ImageIndicatorView;
12 import java.util.List;
13 /**
14  * Created by panchengjia on 2017/1/10 0010.
15  */
16 public class NetworkImageIndicatorView extends ImageIndicatorView {
17     public NetworkImageIndicatorView(Context context, AttributeSet attrs) {
18         super(context, attrs);
19     }
20     public NetworkImageIndicatorView(Context context) {
21         super(context);
22     }
23     public<



 
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • Android中使用开源框架android-image-indicator实现图片轮播部署,

相关文章

  • 2017-05-26Android点击跳转到淘宝的某一商品详情页或者某一店铺页面,android商品详情
  • 2017-05-26手机影音8--视频播放器的高级功能(1),8--高级功能
  • 2017-05-26Android中通信协议,Android通信协议
  • 2017-05-26nginx rewrite常用示例
  • 2017-05-26Android View事件分发机制
  • 2017-05-26Android与HTML+JS交互入门
  • 2017-05-26Android Studio 1.5.1 JNI 编程
  • 2017-05-26linux 破解版 confluence
  • 2017-05-26andriod CheckBox,andriodcheckbox
  • 2017-05-26在Kotlin编写RecyclerView适配器(KAD 16),kotlinrecyclerview

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • Linux之使用NTP服务管理/同步服务器时间
    • Linux主机网络流量监控ifstat
    • 解决VS2017不连接visual studio emulator for android,vs2017android
    • 菜单(Menu)的三中创建方式——Android开发之路2,menuandroid
    • Android ViewTreeObserver(转载),viewtreeobserver
    • FlatBuffers初探,flatbuffers
    • 我的android学习经历3,android学习经历3
    • 策略模式,java策略模式
    • 深入了解Volley如何执行一个Request的流程
    • 手机APP创建桌面快捷方式,app创建快捷方式

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有