Android:从gridview以正常大小查看图像
我正在使用gridview查看特定文件夹中的图像。我想在McClick事件中创建代码。当我点击图像时,它会显示为全尺寸。我尝试了stackoverflow的一些代码,但在我的案例中不起作用。我的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
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
请帮我写代码。谢谢