拍照并获取图像视图android

时间:2014-08-04 06:41:01

标签: android

我有获取图像视图的问题: 拍摄相机并想要图像以布局显示。 最初包含数据库中文件的绝对路径并显示为文本,但现在我想显示图片。怎么做?

   public View getView(int position, View convertView, ViewGroup parent) {
                // get view reference
                View view = convertView;
                // if null 
                if(view == null) {
                        // inflate new layout
                        view = mInflater.inflate(R.layout.acivity_layout_list_item, null);
                        // create a holder
                        ViewHolder holder = new ViewHolder();
                        // find controls
                        holder.txtImage = (TextView)view.findViewById(R.id.txtImage);
                        ... other holder.txtparameters
                        // set data structure to view
                        view.setTag(holder);
                }
                 // get selected user info
                UserInfo userInfo = mListUserInfo.get(position);
                // if not null
                if(userInfo != null) {
                        // query data structure
                        ViewHolder holder = (ViewHolder)view.getTag();
                        // set data to display
                        holder.txtImage.setText(userInfo.getmImage());
                        ...
                }               

                // return view
                return view;
        }
 static class ViewHolder {
            private TextView txtImage;
            ...
}

2 个答案:

答案 0 :(得分:0)

我不清楚问题。

但根据我的理解,您已将图像文件的路径存储到数据库中。并希望显示该路径中的图像。

然后执行以下步骤

  1. 使用ImageView代替TextView。
  2. 从文件路径转换图像

    Bitmap bitmap = BitmapFactory.decodeFile(imageFile.getAbsolutePath()); imageView.setImageDrawable(位图);

  3. 现在在ImageView中显示此位图

  4. 稍后您可以使用Universal Image Loader来实现延迟加载。

答案 1 :(得分:0)

如果你想在ImageView中设置Capture相比,这是Complite的例子,

点击

camera.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            Intent cameraIntent = new Intent(
                    android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
            startActivityForResult(cameraIntent, 100);
        }
    });

OnActivity

if (requestCode == 100 && resultCode == RESULT_OK) {
            super.onActivityResult(requestCode, resultCode, data);
            Bitmap bp = (Bitmap) data.getExtras().get("data");
            s_bmp = bp;
            ph.setImageBitmap(bp);

        }