如何在安卓系统中使用通用图像加载器库?
UIL(通用图像加载器)是一个类似于毕加索和格莱德的库,执行从任何网页网址加载图像到安卓的 ImageView 中。创建这个图像加载库是为了提供一个强大、灵活和可定制的解决方案,从服务器加载安卓系统中的图像。这个图像加载库是由一个独立开发人员创建的,它出现在 GitHub 的顶部列表中。UIL(通用图像加载器)库的特点:
- 该库提供多线程图像加载。
- 图像缓存可以在内存和用户设备中完成。
- 监听加载过程(包括下载进度)。
- 许多可定制的功能可用于每次显示图像调用。
注意,我们将使用 Java 语言来实现这个项目。
分步实施
第一步:创建新项目
要在安卓工作室创建新项目,请参考如何在安卓工作室创建/启动新项目。注意选择 Java 作为编程语言。
第二步:在 build.gradle 文件中添加 UIL 图像库的依赖项。
导航到梯度脚本,然后导航到构建.梯度(模块)级别。在依赖项部分的 build.gradle 文件中添加以下行。
实现“com . nostra 13 . universal image loader:universal-image-loader:1 . 9 . 5”
第三步:在 AndroidManifest.xml 文件中添加互联网权限
导航至应用程序>清单打开清单文件。
可扩展标记语言
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.gtappdevelopers.camviewlibrary">
<!--Permission for internet-->
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/Theme.CamViewLibrary">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
第 4 步:在 activity_main.xml. 中创建新的 ImageView
导航到应用程序> res >布局打开 activity_main.xml 文件。下面是 activity_main.xml 文件的代码。
可扩展标记语言
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<!--Image view for loading our image-->
<ImageView
android:id="@+id/idImageView"
android:layout_width="200dp"
android:layout_height="200dp"
android:layout_centerInParent="true"
android:contentDescription="@string/app_name" />
</RelativeLayout>
第五步:初始化你的 ImageView 并在 MainActivity.java 文件中使用 UIL(通用图像加载器)
导航到应用程序> java >您的应用程序包名称>MainActivity.java文件。以下是MainActivity.java文件的代码。代码中添加了注释,以更详细地理解代码。
Java 语言(一种计算机语言,尤用于创建网站)
import android.os.Bundle;
import android.widget.ImageView;
import androidx.appcompat.app.AppCompatActivity;
import com.nostra13.universalimageloader.core.DisplayImageOptions;
import com.nostra13.universalimageloader.core.ImageLoader;
import com.nostra13.universalimageloader.core.ImageLoaderConfiguration;
public class MainActivity extends AppCompatActivity {
private ImageView img;
DisplayImageOptions options;
ImageLoader imageLoader;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// initialize image loader before using
imageLoader = ImageLoader.getInstance();
imageLoader.init(ImageLoaderConfiguration.createDefault(getApplicationContext()));
// initialize imageview from activity_main.xml
img = findViewById(R.id.idImageView);
// URL for our image that we have to load..
String imageUri = "https://www.geeksforgeeks.org/wp-content/uploads/gfg_200X200-1.png";
// with below method we are setting display option for our image..
options = new DisplayImageOptions.Builder()
// stub image will display when your image is loading
.showStubImage(R.drawable.ic_launcher_foreground)
// below image will be displayed when the image url is empty
.showImageForEmptyUri(R.drawable.ic_launcher_background)
// cachememory method will caches the image in users external storage
.cacheInMemory()
// cache on disc will caches the image in users internal storage
.cacheOnDisc()
// build will build the view for displaying image..
.build();
// below method will display image inside our image view..
imageLoader.displayImage(imageUri, img, options, null);
}
}
注意:所有可抽词都在可抽词文件夹中。您可以在可绘制文件夹中添加可绘制内容。访问可绘制文件夹。导航到应用程序>资源>可绘制区>这个文件夹包含了你所有的可绘制区。
输出:
版权属于:月萌API www.moonapi.com,转载请注明出处