上/下滚动时每次显示新图像时,GridView中的图像都会滞后

时间:2018-12-16 22:29:56

标签: android gridview lag photo-gallery

我正在制作一个包含一个内部画廊(我正在使用GridView实现)的应用程序,该画廊将“ assets”文件夹中的内容图像作为内容图像,用于显示图像的方法如下:

//this is the method getView in the Adapter class i make
    public View getView(int position, View convertView, ViewGroup parent) {
        View view = getLayoutInflater().inflate(R.layout.image_layout, parent, false);
        ImageView image = (ImageView)view.findViewById(R.id.myImage);
        InputStream stream;
        try {
            stream = getAssets().open("gallery/"+getItem(position));
            Drawable d = Drawable.createFromStream(stream, null);

            if (Build.VERSION.SDK_INT >= 16) image.setBackground(d);
            else image.setImageDrawable(d);

            stream.close();
        } catch (IOException e) {
            e.printStackTrace();
        }

        return view;
    }

图像显示正确,但是当我上下滚动时,每当网格中显示新图像时, 该应用程序滞后了几毫秒,但想象一下,每次显示图像时滞后,其性能 烦人的是,我想要的是当我上下滚动以查看图像时使画廊平稳运行。那可能吗 这种方式(从资产文件夹中打开它们)?还是我应该写一种方法将图像复制到外部存储并显示图像? 从那里开始?

注意:

  • 图像数量约为40张。

  • 我的目标是在可能的情况下,在“资产”或“ res”文件夹中打开它们。

  • 在不知道图像名称的情况下添加图像很重要,一个名为“ gallery”的文件夹将保留应显示的图像。(它们都是.jpg), 该文件夹将不包含其他文件扩展名。

那么,我应该怎么做?

0 个答案:

没有答案