1

在我的 android 应用程序中,我列出了带有网络图像视图的图像预览。我希望如果用户按下预览,它会打开一个带有 viewpager 的活动并显示我的回收站视图的特定项目的原始图像。所以,我有两种方法。

1-) 我将为我的数据库中的每个图像保存两个图像。其中一个是小尺寸的预览图像,另一个是原始图像。在我的主要新闻源中,应用程序将加载预览图像,因此下载大小会更小。如果用户按下预览图像,它将打开活动并下载原始图像。

2-) 我的数据库中只有原始图像,我会在下载后最小化它的大小,如果用户按下预览,它将直接显示原始图像,因为它已经下载。

我想知道哪个是更好的方法,或者有比这些更好的方法吗?

这是我为我的图像设置点击监听器的地方:

for(int i = 0; i < listItem.getImageCount(); i++) {
        final NetworkImageView niv = new NetworkImageView(context);

        niv.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
            }
        });

        holderr.layoutImages.addView(niv);
    }

谢谢你。

4

1 回答 1

1

你可以试试这个

如何在上传到服务器之前减小图像文件大小

这个想法是,在发送到服务器之前,该图像的大小将被减小然后下载它,之后(例如 - 小ImageView),

使用类似这样的东西:完整文档:http: //developer.android.com/reference/android/widget/ImageView.ScaleType.html

android:scaleType="centerCrop"

然后,如果用户单击信息Button(或其他),ImageView则会显示大的,但是,它的高度和重量与以前的不同ImageView

这是一个将其与 一起使用的ImageView示例android:scaleType="fitXY"

<ImageView
   android:layout_width="match_parent"
   android:layout_height="match_parent"
   android:contentDescription="Main Image"
   android:padding="1dp"
   android:scaleType="fitXY"
   android:src="@drawable/balloon" />

http://hmkcode.com/android-designing-whatsapp-like-user-profile-screen/

关键是,我认为您不需要将该图像存储在您的 SD 卡或任何地方。只需以最好的质量使用它(存储它)一次 :)

希望有帮助。

于 2016-01-15T20:54:28.953 回答