ImageLoader
ui/res.ImageLoader
目录
方法
- cancel
- clearDiskCache
- clearMemoryCache
- loadImageBitmap
- loadImageDrawable
- loadImageInto
- loadImageIntoBackground
方法
cancel
▸ cancel(view): void
取消指定 View 的图片加载任务。如果该 View 正在加载图片,则取消加载。
示例
"nodejs";
const { imageLoader } = require("ui/res");
// 开始加载图片
imageLoader.loadImageInto(imageView, "https://example.com/image.jpg");
// 取消加载
imageLoader.cancel(imageView);参数
| 名称 | 类型 | 描述 |
|---|---|---|
view | View | 要取消加载的 View 对象 |
返回值
void
clearDiskCache
▸ clearDiskCache(): void
清除图片加载器的磁盘缓存。此操作会删除所有已缓存的图片文件。
示例
"nodejs";
const { imageLoader } = require("ui/res");
// 清除磁盘缓存
imageLoader.clearDiskCache();
console.log("磁盘缓存已清除");返回值
void
clearMemoryCache
▸ clearMemoryCache(): void
清除图片加载器的内存缓存。此操作会释放内存中缓存的图片,但不会删除磁盘缓存。
示例
"nodejs";
const { imageLoader } = require("ui/res");
// 清除内存缓存
imageLoader.clearMemoryCache();
console.log("内存缓存已清除");返回值
void
loadImageBitmap
▸ loadImageBitmap(view, uri): Promise<Bitmap>
从指定的 URI 加载图片并返回 Bitmap 对象。URI 可以是网络地址(http/https)、本地文件路径或 content:// URI。
示例
"nodejs";
const { imageLoader } = require("ui/res");
async function main() {
const bitmap = await imageLoader.loadImageBitmap(
view,
"https://example.com/image.jpg"
);
// 使用 bitmap 对象
imageView.setImageBitmap(bitmap);
}
main();参数
| 名称 | 类型 | 描述 |
|---|---|---|
view | View | View 对象,用于获取 Context(通常传入 ImageView 或其他 View) |
uri | String | 图片的 URI,可以是网络地址、本地文件路径或 content:// URI |
返回值
Promise<Bitmap>
返回一个 Promise,resolve 时返回加载的 Bitmap 对象。
loadImageDrawable
▸ loadImageDrawable(view, uri): Promise<Drawable>
从指定的 URI 加载图片并返回 Drawable 对象。URI 可以是网络地址(http/https)、本地文件路径或 content:// URI。
示例
"nodejs";
const { imageLoader } = require("ui/res");
async function main() {
const drawable = await imageLoader.loadImageDrawable(
view,
"https://example.com/image.jpg"
);
// 使用 drawable 对象
imageView.setImageDrawable(drawable);
}
main();参数
| 名称 | 类型 | 描述 |
|---|---|---|
view | View | View 对象,用于获取 Context(通常传入 ImageView 或其他 View) |
uri | String | 图片的 URI,可以是网络地址、本地文件路径或 content:// URI |
返回值
Promise<Drawable>
返回一个 Promise,resolve 时返回加载的 Drawable 对象。
loadImageInto
▸ loadImageInto(imageView, uri): Promise<void>
从指定的 URI 加载图片并直接设置到 ImageView 中。URI 可以是网络地址(http/https)、本地文件路径或 content:// URI。
示例
"nodejs";
const { imageLoader } = require("ui/res");
const { inflateXml } = require("ui/layout");
async function main() {
const rootView = inflateXml(
context,
`
<ImageView id="img" />
`
);
const imageView = rootView.findView("img");
// 加载网络图片
await imageLoader.loadImageInto(imageView, "https://example.com/image.jpg");
// 加载本地图片
await imageLoader.loadImageInto(imageView, "/sdcard/image.png");
}
main();参数
| 名称 | 类型 | 描述 |
|---|---|---|
imageView | ImageView | 要设置图片的 ImageView 对象 |
uri | String | 图片的 URI,可以是网络地址、本地文件路径或 content:// URI |
返回值
Promise<void>
返回一个 Promise,当图片加载并设置完成时 resolve。
loadImageIntoBackground
▸ loadImageIntoBackground(view, uri): Promise<void>
从指定的 URI 加载图片并设置为 View 的背景。URI 可以是网络地址(http/https)、本地文件路径或 content:// URI。
示例
"nodejs";
const { imageLoader } = require("ui/res");
const { inflateXml } = require("ui/layout");
async function main() {
const rootView = inflateXml(
context,
`
<LinearLayout id="container" />
`
);
const container = rootView.findView("container");
// 加载图片作为背景
await imageLoader.loadImageIntoBackground(
container,
"https://example.com/background.jpg"
);
}
main();参数
| 名称 | 类型 | 描述 |
|---|---|---|
view | View | 要设置背景图片的 View 对象 |
uri | String | 图片的 URI,可以是网络地址、本地文件路径或 content:// URI |
返回值
Promise<void>
返回一个 Promise,当图片加载并设置为背景完成时 resolve。
