【问题标题】:How to display an image with use of jar file in Android?如何在 Android 中使用 jar 文件显示图像?
【发布时间】:2014-09-15 19:02:04
【问题描述】:

我是 Android 新手。如果我在另一个 android 应用程序中调用该 jar 文件的方法,我想创建一个 jar 文件,它将在应用程序的 imageview 中显示图像。例如 jar 文件中的一个方法 DisplayImg(URL); 我将在另一个应用程序中使用这个 jar 作为库,在这里我将创建一个 imageview

ImageView imageView;
imageView = (ImageView) findViewById(R.id.img);

然后,如果我调用imageView.DisplayImg(URL);,它将在 imageview 上显示指定的 url 图像。我花了很多时间来获得解决方案但没有工作。请帮助代码谢谢

【问题讨论】:

标签: java android eclipse jar android-library


【解决方案1】:

您不需要创建一个库,事实上,有一个相同的库可以完全做您想做的事! 它被称为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" />

希望对您有所帮助:)

【讨论】:

    猜你喜欢
    • 2014-07-16
    • 2015-03-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多