Android UI-开源框架ImageLoader的完美例子

2023-11-18

android:layout_gravity=“left|center_vertical”

android:layout_marginLeft=“20dip”

android:textSize=“22sp” />

GridView异步加载图片显示

/2013.8.19_Universal_Image_Loader_Demo/res/layout/ac_image_grid.xml

<?xml version="1.0" encoding="utf-8"?>

<GridView xmlns:android=“http://schemas.android.com/apk/res/android”

android:id=“@+id/gridview”

android:layout_width=“fill_parent”

android:layout_height=“fill_parent”

android:gravity=“center”

android:horizontalSpacing=“4dip”

android:numColumns=“3”

android:stretchMode=“columnWidth”

android:verticalSpacing=“4dip”

android:padding=“4dip” />

/2013.8.19_Universal_Image_Loader_Demo/res/layout/item_grid_image.xml

<?xml version="1.0" encoding="utf-8"?>

<ImageView xmlns:android=“http://schemas.android.com/apk/res/android”

android:id=“@+id/image”

android:layout_width=“fill_parent”

android:layout_height=“120dip”

android:adjustViewBounds=“true”

android:contentDescription=“@string/descr_image”

android:scaleType=“centerCrop” />

ViewPager异步加载图片显示

**/2013.8.19_Universal_Image_Loader_Demo/res/layout/ac_image_pager.xml

**

<?xml version="1.0" encoding="utf-8"?>

<android.support.v4.view.ViewPager xmlns:android=“http://schemas.android.com/apk/res/android”

android:id=“@+id/pager”

android:layout_width=“fill_parent”

android:layout_height=“fill_parent” />

/2013.8.19_Universal_Image_Loader_Demo/res/layout/ item_pager_image.xml

<?xml version="1.0" encoding="utf-8"?>

<FrameLayout xmlns:android=“http://schemas.android.com/apk/res/android”

android:layout_width=“fill_parent”

android:layout_height=“fill_parent”

android:padding=“1dip” >

<ImageView

android:id=“@+id/image”

android:layout_width=“wrap_content”

android:layout_height=“wrap_content”

android:layout_gravity=“center”

android:adjustViewBounds=“true”

android:contentDescription=“@string/descr_image” />

<ProgressBar

android:id=“@+id/loading”

android:layout_width=“wrap_content”

android:layout_height=“wrap_content”

android:layout_gravity=“center”

android:visibility=“gone” />

Gallery画廊异步加载图片显示

**/2013.8.19_Universal_Image_Loader_Demo/res/layout/ac_image_gallery.xml

**

<?xml version="1.0" encoding="utf-8"?>

<Gallery xmlns:android=“http://schemas.android.com/apk/res/android”

android:id=“@+id/gallery”

android:layout_width=“fill_parent”

android:layout_height=“wrap_content”

android:layout_gravity=“center_vertical”

android:spacing=“1dip” />

/2013.8.19_Universal_Image_Loader_Demo/res/layout/item_gallery_image.xml

<?xml version="1.0" encoding="utf-8"?>

<ImageView xmlns:android=“http://schemas.android.com/apk/res/android”

android:id=“@+id/image”

android:layout_width=“120dip”

android:layout_height=“120dip”

android:layout_gravity=“center”

android:adjustViewBounds=“true”

android:contentDescription=“@string/descr_image”

android:scaleType=“centerCrop” />

还有一个就是桌面小部件

以上只是布局文件,没有什么可以说,具体Activity代码实现如下:

先是这个:

/2013.8.19_Universal_Image_Loader_Demo/src/com/nostra13/example/universalimageloader/HomeActivity.java

主界面Activity代码

/*******************************************************************************

  • Copyright 2011-2013 Sergey Tarasevich

  • Licensed under the Apache License, Version 2.0 (the “License”);

  • you may not use this file except in compliance with the License.

  • You may obtain a copy of the License at

  • http://www.apache.org/licenses/LICENSE-2.0

  • Unless required by applicable law or agreed to in writing, software

  • distributed under the License is distributed on an “AS IS” BASIS,

  • WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

  • See the License for the specific language governing permissions and

  • limitations under the License.

*******************************************************************************/

package com.nostra13.example.universalimageloader;

import static com.nostra13.example.universalimageloader.Constants.IMAGES;

import java.io.File;

import java.io.FileOutputStream;

import java.io.IOException;

import java.io.InputStream;

import android.content.Intent;

import android.os.Bundle;

import android.view.View;

import com.nostra13.example.universalimageloader.Constants.Extra;

import com.nostra13.universalimageloader.utils.L;

/**

  • @author Sergey Tarasevich (nostra13[at]gmail[dot]com)

*/

public class HomeActivity extends BaseActivity {

private static final String TEST_FILE_NAME = “Universal Image Loader @#&=±_.,!()~'%20.png”;

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.ac_home);

// 定义文件对象,目录:/mnt/sdcard, 文件名:TEST_FILE_NAME

File testImageOnSdCard = new File(“/mnt/sdcard”, TEST_FILE_NAME);

if (!testImageOnSdCard.exists()) { // 如果文件不存在

// 把文件复制到SD卡

copyTestImageToSdCard(testImageOnSdCard);

}

}

// 点击进入ListView展示界面

public void onImageListClick(View view) {

Intent intent = new Intent(this, Image

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android UI-开源框架ImageLoader的完美例子 的相关文章

  • Firebase 管理 SDK Android

    在 Android 中初始化 Firebase Admin SDK 的代码 Override protected void onCreate Bundle savedInstanceState super onCreate savedIns
  • 在应用程序简历中隐藏软键盘

    我有一个 Android 应用程序 使用 Xamarin 用 C 编写 我已将应用程序简化为包含 TextView 和用于横幅广告的 Google admod AdView 的 LinearLayout 我不希望软键盘出现在应用程序中 这不
  • getItem 与 getItemAtPosition

    有两种方法可以获取列表视图中的选定项目 list getAdapter getItem position list getItemAtPosition position 我的问题是 哪一种是首选的做法 我见过人们同时使用这两种方法 您可以使
  • 从 Throwable 获取错误代码 - Android

    我怎样才能从错误代码可投掷 https developer android com reference java lang Throwable html public void onFailure Throwable exception 我
  • 在自定义对象中创建时粘性服务不会重新启动

    我有一个具有绑定服务的单例对象 我希望它重新启动 当我从启动器启动应用程序时 单例对象将初始化并绑定到这个现有的服务实例 以下是在单例中创建和绑定服务的代码 public class MyState private static MySta
  • 如何从 SQLite 获取记录总数

    我正在尝试从 Sqlite DB 获取行的总数 以下是我想要做的代码片段 我不知道我在这里做错了什么 public static int getTotalCount Context context Cursor c null try c g
  • Phonegap - 如何将.txt文件保存在Android手机的根目录中

    我正在尝试使用phonegap 将 txt 文件保存在Android 手机的根目录中 我已经安装了这些插件 cordova plugin file 和 cordova plugin file transfer 在 config xml 文件
  • 在 Google Analytics 中跟踪应用程序版本

    我正在使用谷歌分析模块 https marketplace appcelerator com apps 5081 2014113336 https marketplace appcelerator com apps 5081 2014113
  • 线程自动利用多个CPU核心?

    假设我的应用程序运行 2 个线程 例如渲染线程和游戏更新线程 如果它在具有多核 CPU 当今典型 的移动设备上运行 我是否可以期望线程在可能的情况下自动分配给不同的核心 我知道底层操作系统内核 Android linux内核 决定调度 我的
  • 获取 AlarmManager 中活动的 PendingIntents 列表

    我有办法获取活动列表PendingIntent在设备中 我开始工作AlarmManager我想看看我的PendingIntents 已正确创建和删除 也很高兴看到其他什么PendingIntent在那里 只是为了看看某些应用程序是否正在做一
  • TextView 之间有分隔线

    我正在尝试在 android studio 中创建以下布局 因为我对 android 东西还很陌生 所以我第一次尝试使用 LinearLayout 并认为这可能无法实现 现在我正在尝试使用RelativeLayout 我已经用颜色创建了这个
  • 从 Firebase 数据库填充微调器

    public class MainActivity extends AppCompatActivity DatabaseReference reference Spinner areaSpinner ArrayList
  • 请求位置更新参数

    这就是 requestLocationUpdates 的样子 我使用它的方式 requestLocationUpdates String provider long minTime float minDistance LocationLis
  • Flutter 深度链接

    据Flutter官方介绍深层链接页面 https flutter dev docs development ui navigation deep linking 我们不需要任何插件或本机 Android iOS 代码来处理深层链接 但它并没
  • 使用 Matrix.setPolyToPoly 选择位图上具有 4 个点的区域

    我正在 Android 上使用位图 在使用 4 个点选择位图上的区域时遇到问题 并非所有 4 点组都适合我 在某些情况下 结果只是一个空白位图 而不是裁剪后的位图 如图所示 并且 logcat 中没有任何错误 甚至是内存错误 这是我用来进行
  • 在 Android 上按下电源按钮时,如何防止先调用 onDestroy() 再调用 onCreate()

    我正在记录每个 onCreate 和 onDestroy 调用 我发现 一旦我单击 Android 上的电源按钮 以及模拟器上的电源按钮 我的活动中就会拨打电话 gt onDestroy gt onCreate 这会杀死我的游戏 然后立即从
  • 当手机旋转(方向改变)时如何最好地重新创建标记/折线

    背景 开发一个使用 Android Google Map v2 的本机 Android 应用程序 使用android support v4 app FragmentActivity 在 Android v2 2 上运行 客观的 在更改手机方
  • 使用 Espresso 检查 EditText 的字体大小、高度和宽度

    如何使用 Espresso 检查 EditText 的字体大小 高度和宽度 目前要分割我使用的文本 onView withId R id editText1 perform clearText typeText Amr 并阅读文本 onVi
  • 用于推送通知的设备令牌

    我正在实施推送通知服务 我需要创建一个数据库来存储 4 个移动平台的所有设备令牌 我想根据他们的平台 iOS Android BlackBerry WP7 来组织它们 但是有什么方法可以区分平台 这样如果我只想向 Android 用户发送消
  • 在webview android中加载本地html文件

    我正在尝试在 android 的 webview 中加载 html 文件的内容 但是 它给了我 网页不可用错误 如果我尝试使用谷歌或雅虎等网站 它们就会起作用 html文件位于src gt main gt assests gt index

随机推荐

  • 使用ThreadPoolTaskExecutor解决高并发性的问题

    ThreadPoolTaskExecutor 使用ThreadPoolTaskExecutor解决高并发性的问题 1 创建一个ThreadPoolTaskExecutor 2 往线程里面添加FutureTask对象 3 然后等待Future
  • VMware虚拟机扩容 磁盘分配过慢 直接添加物理磁盘 挂载ntfs mount: unknown filesystem type ‘ntfs’解决办法

    场景描述 在VMware虚拟机的使用过程中 有一些较大的文件需要存储 准备给虚拟机扩容 宿主机有一块机械硬盘 已格式化为两个ntfs格式的分区 我们准备用第二个分区给虚拟机扩容 且分区中已经存有文件 备份文件和虚拟机分配磁盘空间 这两个步骤
  • darknet+yolo4的windows下图片验证码识别一:环境编译和运行

    原创来自本人的公众号 阿嚏个技术 公众号文章地址 darknet yolo4的windows下图片验证码识别 之一 环境编译和运行 目前有很多采取深度学习的方式 进行图片验证码的文字识别 然后实现打码功能 本文采用darknet yolo4
  • Linux服务篇-FTP-文件传输协议

    一 FTP 文件传输协议 1 介绍 FTP服务器 File Transfer Protocol Server 是在互联网上提供文件存储和访问服务的计算机 它们依照FTP协议提供服务 是 TCP IP 协议组中的协议之一 FTP是用来传输文件
  • 【实战】淘宝电商用户行为分析——SQL

    目录 一 项目背景 1 1分析目的 1 2分析思路 二 数据来源 清洗 2 1数据集介绍 2 2数据清洗 2 2 1 检查是否存在重复值 2 2 2 检查是否存在缺失值 2 2 3 一致化处理 对timestamp 2 2 4异常值处理 时
  • 微信小程序使用setData方法修改data中对象或数组的属性值

    前些天发现了一个巨牛的人工智能学习网站 通俗易懂 风趣幽默 忍不住分享一下给大家 点击跳转到网站 微信小程序使用setData方法修改data中对象或数组的属性值 使用微信小程序开发时 涉及到data的修改一般使用微信官方推荐的setDat
  • mysql读写分离(mysql-proxy-0.85)

    读写分离代理172 25 11 1 主 172 25 11 2 从库172 25 11 3 从库172 25 11 4 proxy端 代理端 yum install y gcc gcc c autoconf automake zlib li
  • 脱机使用计算机,电脑设备变成脱机状态的解决办法

    计算机网络信息的发展是一把双刃剑 虽然为人们的生活带来很大的方便 但是其中隐含的计算机网络信息安全问题是不可忽视的 近些年来计算机网络信息安全频频受损 影响了人们日常生活 下面是小编为大家整理的关于 一起来看看吧 1 首先要检查你的网络是否
  • 每日小练习 ——《计算布尔表达式的值》LeetCode Plus 会员专享题【详细解析】Hive / MySQL

    大家早上好 本人姓吴 如果觉得文章写得还行的话也可以叫我吴老师 欢迎大家跟我一起走进数据分析的世界 一起学习 感兴趣的朋友可以关注我的数据分析专栏 里面有许多优质的文章跟大家分享哦 另外也欢迎大家关注我的SQL刷题专栏 里面有我分享的高质量
  • 开源的AI算法可以进行物体识别,动物识别

    有许多开源的AI算法可以进行物体识别和动物识别 其中最常用的算法是深度学习中的卷积神经网络 Convolutional Neural Network CNN 如Google开源的Inception和ResNet模型 以及Facebook开源
  • Java VS Python各自在AI人工智能领域的应用前景

    目前AI领域应用最广泛的开发语言是Python Python在过去几年里在人工智能和机器学习领域取得了巨大的成功和普及 有几个原因使得Python成为AI开发的首选语言 丰富的库和框架 Python拥有许多专门用于AI和机器学习的优秀库和框
  • STM32学习笔记

    GPIO 通用输入输出口 所有GPIO口都是挂载在APB2外设总线上 GPIO外设名称按照GPIOA GPIOB GPIOC来命名 每个GPIO外设有16个引脚 0 15 GPIOA的第0号引脚称作PA0 八种输入输出模式 1 浮空输入 可
  • 去除快捷方式箭头BAT脚本

    去除快捷方式箭头BAT脚本 1 脚本功能 去除window电脑桌面图标右下角的快捷方式小箭头 对于强迫症患者绝对是福音 总之清除了之后非常的舒畅 2 脚本内容 echo off color 2 reg delete HKCR lnkfile
  • Knowledge Distillation and Student-Teacher Learning for Visual Intelligence

    本文是蒸馏学习综述系列的第四篇文章 Knowledge Distillation and Student Teacher Learning for Visual Intelligence A Review and New Outlooks的
  • C89和C99标准比较

    1 增加restrict指针 C99中增加了公适用于指针的restrict类型修饰符 它是初始访问指针所指对象的惟一途径 因此只有借助restrict指针表达式才能访问对象 restrict指针指针主要用做函数变元 或者指向由malloc
  • PAT B 1055 集体照(C语言)

    一 题目 拍集体照时队形很重要 这里对给定的 N 个人 K 排的队形设计排队规则如下 每排人数为 N K 向下取整 多出来的人全部站在最后一排 后排所有人的个子都不比前排任何人矮 每排中最高者站中间 中间位置为 m 2 1 其中 m 为该排
  • 设备退出:“设备正在使用”的快速解决办法

    我们常常遇到U盘或移动硬盘显示因为 设备正在使用 而无法拔出的情况 如果冒然拔出 可能会造成数据丢失或损坏设备的情况 现在提供一个可以快速解决的办法 步骤一 win r 打开cmd命令命令面板 步骤二 输入diskpart 进入磁盘分区管理
  • android手机拍摄权限,react-native 手机拍照权限

    第一步 在 android app src main AndroidManifest xml 添加 然后运行项目在手机应用权限哪里查看 这是添加前的 这是添加后的 第二步调用 import React Component from reac
  • Vuforia的各种Target的简单介绍(包括地面识别)

    Vuforia的各种Target的简单介绍 包括地面识别 前言 Vuforia的两种识别分类 1 需要特定目标的识别 2 不需要特定目标的识别 上边两种的优缺点 基于优缺点进行的阿应用场景推荐 需要目标的类型 上传你的目标到服务器 不需要目
  • Android UI-开源框架ImageLoader的完美例子

    android layout gravity left center vertical android layout marginLeft 20dip android textSize 22sp gt GridView异步加载图片显示 20