您不需要创建一个库,事实上,有一个相同的库可以完全做您想做的事!
它被称为Picasso。你可以找到它here。
还要注意,如果你想要imageView.DisplayImage(URL);,你应该创建一个ImageView 类的新实例,因为它不包含这个方法。我推荐使用DisplayImage(URL, imageView);。
但如果你真的想要这样做,你可以这样做:
1- 要创建库,请创建 New Android Application Project,然后在第二个窗口中选中 Mark this project as a library 选项。另请注意,我们不需要Activity。
2- 在新建项目中新建一个类,如ImageUtils.java。这里需要放DisplayImage()方法:
public static void DisplayImage(String URL, ImageView imageView) {
new DownloadImageTask(imageView).execute(URL);
}
这对于DownloadImageTask 类:
public static class DownloadImageTask extends AsyncTask<String, Void, Bitmap> {
ImageView imageView;
public DownloadImageTask(ImageView bmImage) {
this.imageView = bmImage;
}
protected Bitmap doInBackground(String... urls) {
String urldisplay = urls[0];
Bitmap imageBitmap = null;
try {
InputStream in = new java.net.URL(urldisplay).openStream();
imageBitmap = BitmapFactory.decodeStream(in);
} catch (IOException e) {
// Probably there's no Internet connection. Warn the user about checking his/her connection.
Log.e("Error", e.getMessage());
e.printStackTrace();
}
return imageBitmap;
}
protected void onPostExecute(Bitmap result) {
if (imageView != null) imageView.setImageBitmap(result);
}
}
3- 将您的项目作为 android 应用程序执行。
4- 在bin 文件夹下应该有一个jar 文件。这是你的图书馆。将其导入您的其他应用程序并使用它。在该应用程序中,您可以将其与以下代码一起使用:
ImageView imageView = (ImageView) findViewById(R.id.img);
ImageUtils.DisplayImage(URL, imageView);
5- 不要忘记将此权限添加到使用此库的应用程序中:
<uses-permission android:name="android.permission.INTERNET" />
希望对您有所帮助:)