2012-12-27 316 views
1

我有一个gridview,我在对话视图中膨胀。 现在,当我打开对话框(使用网格视图)时,它会显示一组10个图像。获取GridView项目的图像名称

当对话框被取消时,我选择的图像被设置在ImageView上。

现在我的查询是我可以得到图像的名称??在ImageView上设置?

我必须保存它somehwere。

@Override 
public void onClick(View view) { 
    // TODO Auto-generated method stub 
    final Dialog groupIconsDialog = new Dialog(CreateGroupActivity.this); 
    groupIconsDialog.setTitle("Choose Group Icon"); 
    groupIconsDialog.setContentView(R.layout.group_icons_layout); 
    //calling and setting the image icons to the grid view adapter 
    GridView groupIconsGrid = (GridView)groupIconsDialog.findViewById(R.id.grid_groupIcons); 
    groupIconsGrid.setAdapter(new GroupIconAdapter(CreateGroupActivity.this)); 

    groupIconsGrid.setOnItemClickListener(new OnItemClickListener() { 

     @Override 
     public void onItemClick(AdapterView<?> arg0, View arg1, 
         int position, long arg3) { 
        // TODO Auto-generated method stub 

        group_icon.setImageResource(new GroupIconAdapter(CreateGroupActivity.this).mThumbIds[position]); 
        groupIconsDialog.dismiss(); 

       } 

      }); 

      groupIconsDialog.show(); 

     } 
    }); 

ImageAdapter

public class GroupIconAdapter extends BaseAdapter { 

    private Context mContext; 

    //icons image array 
    public Integer[] mThumbIds = { 
       R.drawable.mogra,R.drawable.rhino, 
       R.drawable.zebra,R.drawable.lion, 
       R.drawable.mogra,R.drawable.rhino, 
       R.drawable.giraffee,R.drawable.giraffee, 
       R.drawable.lion,R.drawable.rhino 
     }; 

    public GroupIconAdapter(Context c) { 
     // TODO Auto-generated constructor stub 
     mContext = c; 
    } 

    @Override 
    public int getCount() { 
     // TODO Auto-generated method stub 
     return mThumbIds.length; 
    } 

    @Override 
    public Object getItem(int position) { 
     // TODO Auto-generated method stub 
     return mThumbIds[position]; 
    } 

    @Override 
    public long getItemId(int arg0) { 
     // TODO Auto-generated method stub 
     return 0; 
    } 

    @Override 
    public View getView(int position, View view, ViewGroup parent) { 
     // TODO Auto-generated method stub 
     ImageView imageView = new ImageView(mContext); 
     imageView.setImageResource(mThumbIds[position]); 
     imageView.setScaleType(ImageView.ScaleType.CENTER_CROP); 
     imageView.setLayoutParams(new GridView.LayoutParams(50, 50)); 
     return imageView; 
     } 
} 

回答

4

是的,你可以得到图像的名称,如果你有图片的资源ID。您可以使用getResourceEntryName(resourceId)

String name = getResources().getResourceEntryName(mThumbIds[position]); 
+0

它不工作 – Aditya

+0

http://stackoverflow.com/questions/31826494/image-is-not-attaching-in-gmail-and-facebook – Aditya

+0

我得到的图像与GAMIL名附件..当检查其类型..它显示文件类型 – Aditya