📜  来自资产的 uiimage - Javascript (1)

📅  最后修改于: 2023-12-03 14:55:30.556000             🧑  作者: Mango

从资产中获取 UIImage - Javascript

在 iOS 开发中,我们经常需要从资产目录加载图片到应用程序中。在 JS 中同样存在这样的需求。本文将介绍如何在 Javascript 中从资产中获取 UIImage。

使用 UIImage.fromFile()

UIImage.fromFile() 是一个常用的方法,既可以在 Xcode 项目中使用,也可以在 JS 中使用。其可以根据文件名在指定路径中加载 UIImage。

以下是基本用法示例:

var image = UIImage.fromFile('/path/to/image.png');

其中,/path/to/image.png 表示图片的完整路径。请注意使用绝对路径而非相对路径。

使用 NSBundle.mainBundle()

如果图片在 Xcode 项目中,我们可以使用 NSBundle.mainBundle().pathForResource() 方法获取文件路径。该方法接收两个参数,第一个参数是字符串类型的文件名,第二个参数是字符串类型的扩展名。

以下是基本用法示例:

var imagePath = NSBundle.mainBundle().pathForResource('image', 'png');
var image = UIImage.fromFile(imagePath);

该方法默认从应用程序的主 bundle 中加载图片。如果图片在其他 bundle 中,可以使用修饰符指定。

加载网络图片

如果需要加载网络图片,我们可以使用 fromURL() 方法。该方法接收一个 URL 字符串作为参数,并返回一个 Promise 对象。在 Promise 完成时,我们可以获取到加载完成的 UIImage。

以下是基本用法示例:

var imageURL = 'https://example.com/image.png';
UIImage.fromURL(imageURL).then(function(image) {
  // 加载完成,并成功获取到 UIImage
  console.log(image);
}).catch(function(error) {
  // 加载失败
  console.log(error);
});

需要注意的是,由于网络加载是异步的,因此我们需要使用 Promise 来处理加载完成和加载失败的情况。

结语

以上就是从资产中获取 UIImage 的方法。使用这些方法可以方便地获取本地和网络图片,并在应用程序中进行使用。