Android在GridView中显示图像

时间:2014-01-13 13:26:18

标签: android image gridview

嗨,我对Android很新,我基本上卡住了。我有一些图像路径(例如字符串路径),我想在GridView上显示这些图像。

这是一个实际上膨胀由GridView组成的布局的类。

public class FragmentLayout extends Fragment
{
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
    {
        //String path = "/mnt/sdcard/Android/data/com.android.browser/files/Download/2014-01-10-00-13-39--1894493676.jpeg";

        View rootView = inflater.inflate(R.layout.fragment_layout, container, false);
        return rootView;
    }
}

请问任何指南?

3 个答案:

答案 0 :(得分:0)

由于你是android的新手,你可能最好不要使用第三方库,而不是在gridview中为图像编写自己的容器。缓存和加载时间将是大多数人不会想到的问题。看一下这个帖子:

Lazy load of images in ListView

LazyList(具体来说,这篇文章:https://stackoverflow.com/a/8562313/2066079)对你来说可能是一个巨大的帮助,虽然它可能有点过分。

如果您事先知道路径,可以将它们设为drawable,为每个路径创建ImageView,然后将它们放入GridLayout。我选择GridLayout超过GridView的原因是为了与旧设备兼容。

为了让图片填满网格容器,我发现这篇文章:非常有用:GridLayout (not GridView) how to stretch all children evenly 但就像我说的那样 - 如果图像很大,或者只有少数几个图像存在,缓存和加载时间就会成为问题。

答案 1 :(得分:0)

请参阅这些示例以获取帮助

http://www.androidhive.info/2012/02/android-gridview-layout-tutorial/

http://androidprogramz.blogspot.in/2012/07/display-images-in-gridview.html

http://www.tutorialspoint.com/android/android_grid_view.htm

您可以执行此操作来处理图像或仅创建可绘制数组

if (mobile.equals("Windows")) {
                imageView.setImageResource(R.drawable.windows_logo);
            } else if (mobile.equals("iOS")) {
                imageView.setImageResource(R.drawable.ios_logo);
            } else if (mobile.equals("Blackberry")) {
                imageView.setImageResource(R.drawable.blackberry_logo);
            } else {
                imageView.setImageResource(R.drawable.android_logo);
            }

ArrayList<Integer> myImageList = new ArrayList<Integer>();
myImageList.add(R.drawable.thingOne);
// later...
myImageView.setImageResouce(myImageList.get(i));

答案 2 :(得分:0)

如果它们只是静态图像,请将它们复制到您的drawable文件夹中,然后您可以使用关于网格视图的Android文档中的确切示例:

http://developer.android.com/guide/topics/ui/layout/gridview.html