Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/spring-boot/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android:从gridview以正常大小查看图像_Android_Image_Gridview - Fatal编程技术网

Android:从gridview以正常大小查看图像

Android:从gridview以正常大小查看图像,android,image,gridview,Android,Image,Gridview,我正在使用gridview查看特定文件夹中的图像。我想在McClick事件中创建代码。当我点击图像时,它会显示为全尺寸。我尝试了stackoverflow的一些代码,但在我的案例中不起作用。我的gridview代码是 public class PrivateGallery extends Activity { private int count; private Bitmap[] thumbnails; private boolean[] thumbnailsselection; private

我正在使用gridview查看特定文件夹中的图像。我想在McClick事件中创建代码。当我点击图像时,它会显示为全尺寸。我尝试了stackoverflow的一些代码,但在我的案例中不起作用。我的gridview代码是

public class PrivateGallery extends Activity {
private int count;
private Bitmap[] thumbnails;
private boolean[] thumbnailsselection;
private String[] arrPath;
private ImageAdapter imageAdapter;
ArrayList<String> f = new ArrayList<String>();// list of file paths
File[] listFile;
private Context mcontext;

/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.gallery);
    getFromSdcard();
    GridView imagegrid = (GridView) findViewById(R.id.PhoneImageGrid);
    imageAdapter = new ImageAdapter();
    imagegrid.setAdapter(imageAdapter);
    imagegrid.setOnItemLongClickListener(new OnItemLongClickListener() {

        @Override
        public boolean onItemLongClick(AdapterView<?> parent, View view,
                int position, long id) {
            // TODO Auto-generated method stub
            File afile = new File(f.get(position));
            if (afile.delete()) {
                Toast.makeText(getApplicationContext(), "file deleted",
                        Toast.LENGTH_LONG).show();
            } else {

                Toast.makeText(getApplicationContext(), "file not deleted",
                        Toast.LENGTH_LONG).show();
            }
            return false;
        }
    });
    ;

    imagegrid.setOnItemClickListener(new OnItemClickListener() {
        public void onItemClick(AdapterView<?> parent, View v,
                int position, long id) {
            File afile = new File(f.get(position));
            Toast.makeText(getApplicationContext(), f.get(position),
                    Toast.LENGTH_LONG).show();


        }

    });

}

public void getFromSdcard() {
    File file = new File(
            "/data/data/com.mati.testprivatefolder/cache/MyPrivateFolder2//");

    if (file.isDirectory()) {
        listFile = file.listFiles();

        for (int i = 0; i < listFile.length; i++) {
            if (listFile[i].isDirectory()) {
            } else {
                f.add(listFile[i].getAbsolutePath());
            }

        }
    }
}

public class ImageAdapter extends BaseAdapter {

    public LayoutInflater mInflater;

    public ImageAdapter() {
        mInflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    }

    public ImageAdapter(Context c) {
        mcontext = c;
    }

    public int getCount() {
        return f.size();
    }

    public Object getItem(int position) {
        return position;
    }

    public long getItemId(int position) {
        return position;
    }

    public View getView(int position, View convertView, ViewGroup parent) {
        ViewHolder holder;
        if (convertView == null) {

            holder = new ViewHolder();
            convertView = mInflater.inflate(R.layout.galleryitem, null);
            holder.imageview = (ImageView) convertView
                    .findViewById(R.id.thumbImage);

            convertView.setTag(holder);
        } else {
            holder = (ViewHolder) convertView.getTag();
        }

        Bitmap myBitmap = BitmapFactory.decodeFile(f.get(position));
        holder.imageview.setImageBitmap(myBitmap);

        return convertView;
    }

}

class ViewHolder {
    ImageView imageview;

}

}
公共类PrivateGallery扩展活动{
私人整数计数;
私人位图[]缩略图;
私有布尔[]缩略图选择;
私有字符串[]路径;
专用图像适配器;
ArrayList f=new ArrayList();//文件路径列表
文件[]列表文件;
私有上下文;
/**在首次创建活动时调用*/
@凌驾
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.gallery);
getFromSdcard();
GridView imagegrid=(GridView)findViewById(R.id.PhoneImageGrid);
imageAdapter=新的imageAdapter();
setAdapter(imageAdapter);
setOnItemLongClickListener(新的OnItemLongClickListener(){
@凌驾
长单击(AdapterView父视图、视图、,
内部位置,长id){
//TODO自动生成的方法存根
File afile=新文件(f.get(position));
if(afile.delete()){
Toast.makeText(getApplicationContext(),“文件已删除”,
Toast.LENGTH_LONG).show();
}否则{
Toast.makeText(getApplicationContext(),“文件未删除”,
Toast.LENGTH_LONG).show();
}
返回false;
}
});
;
setOnItemClickListener(新的OnItemClickListener(){
public void onItemClick(AdapterView父视图、视图v、,
内部位置,长id){
File afile=新文件(f.get(position));
Toast.makeText(getApplicationContext(),f.get(position),
Toast.LENGTH_LONG).show();
}
});
}
public void getFromSdcard(){
文件=新文件(
“/data/data/com.mati.testprivatefolder/cache/MyPrivateFolder2/”;
if(file.isDirectory()){
listFile=file.listFiles();
for(int i=0;i
请帮我写代码。谢谢