android - 我想将我的 GridView 保存在一个 ImageView 中

标签 android gridview filesystems android-sdcard

如何在一个 ImageView 中保存我的网格完整 GridView 项目有人帮助我。在下面的代码中,这是我用于 GridView 的 ImageAdapter,这里是我的 GridView 项,我想在 ImageView 中的 sdcard 中保存“mthum”位图数组

            public  class ImageAdapter extends BaseAdapter {
            private Context mContext;
            Bitmap bit = Bitmap.createScaledBitmap(S.Murge_Bitmap, 280,  280, false);
            public Bitmap[] mThum={bit,bit,bit,bit,bit,bit,bit,bit,bit,bit,bit,bit};
            public ImageAdapter(Context c) {
            mContext = c;
            }

            public int getCount() {
            return mThum.length;
            }

            public Object getItem(int position) {
            return mThum[position];
            }
            public long getItemId(int position) {
            return 0;
            }


            public View getView(int position, View convertView, ViewGroup parent) {
            ImageView imageView;
            if (convertView == null) {   
            imageView = new ImageView(mContext);
            imageView.setLayoutParams(new GridView.LayoutParams(85, 85));
            imageView.setScaleType(ImageView.ScaleType.CENTER);
            imageView.setPadding(1, 1, 1, 1);
            } else {
            imageView = (ImageView) convertView;
            }
            imageView.setImageBitmap(mThum[position]);
            return imageView;
            } 

最佳答案

你可以使用这个解决方案,但我认为它只会给你一个显示图像的位图:

Bitmap b = Bitmap.createBitmap(mGridView.getDrawingCache());

如果您对此有疑问并且无法获得位图,请尝试以下操作:

mGridView.setDrawingCacheEnabled(true); 
// Without it the view will have a dimension of 0,0 and the bitmap will be null          
mGridView.measure(MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED), 
            MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED));
mGridView.layout(0, 0, v.getMeasuredWidth(), v.getMeasuredHeight()); 

mGridView.buildDrawingCache(true);
Bitmap b = Bitmap.createBitmap(mGridView.getDrawingCache());
mGridView.setDrawingCacheEnabled(false); // clear drawing cache

否则,如果您想要来自“适配器”的所有图像,您可以像这个答案中描述的那样构造您的位图:

https://stackoverflow.com/a/15152221/1686472

编辑:我没看到你想将图像保存在 SD 卡上,关于这个问题有很多答案,所以你应该看看它们:

https://stackoverflow.com/a/15662384/1686472

关于android - 我想将我的 GridView 保存在一个 ImageView 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21694366/

相关文章:

android - 如果使用微调器,如何 checkin listView。安卓

android - Android:mobilenet_v1_1.0_224.tflite模型未返回边界框信息

android - GridView 自动调整图像

linux - 由于 "Device or resource busy",rmdir 失败

javascript - Cookie 未存储在 Android Webview 中

android - 在 Release模式下使用 manifestmerger 时出现问题

android - 带有 colspan 和 rowSpan 的 GridView

asp.net - 强制 ASP.NET GridView 分页器显示

linux - 即使是 root 也不允许读取文件操作

c - 帮助弄清楚制作文件路径字符串