Android将图像添加到数据库

时间:2014-01-10 14:52:24

标签: android database image sqlite store

我制作了一个程序,当用户按下图像按钮时,他将从图库中选择一个图像,该图像将嵌入图像按钮中。现在我需要扩展程序,当用户按下添加按钮时,图像按钮中的图像将与描述一起存储在数据库中(用户在编辑文本中输入文本,例如运动)...我已经创建了一个类数据库等......

任何人都可以帮我添加案例“案例R.id.button2”的代码,即点击添加按钮的时候吗?

非常感谢

public class NewPortal extends Activity implements OnClickListener, android.view.View.OnClickListener

{
 public static final int REQUEST_CODE =1;

 @Override
 public void onCreate(Bundle savedInstanceState) 
 {
     super.onCreate(savedInstanceState);

 setContentView(R.layout.portallayout);
 ImageButton btn1 = (ImageButton)findViewById(R.id.imageButton2);
    btn1.setOnClickListener(this);

    Button btn2 = (Button)findViewById(R.id.button2);
    btn2.setOnClickListener(this);
 }

 public void onClick(View v) {

  Toast pieceToast=null;

  switch (v.getId()) {

  case R.id.imageButton2:
   Intent intent = new Intent();
   intent.setType("image/*");
   intent.setAction(Intent.ACTION_GET_CONTENT);
   intent.addCategory(Intent.CATEGORY_OPENABLE);
   startActivityForResult(intent, REQUEST_CODE);
   break;

   case R.id.button2:
  break;
  }
 }

 @Override
  public void onClick(DialogInterface dialog, int which) {
  // TODO Auto-generated method stub

     }



 @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);

    if(requestCode == RESULT_CANCELED) return;

    ParcelFileDescriptor fd;
    try {
        fd = getContentResolver().openFileDescriptor(data.getData(), "r");
    } catch (FileNotFoundException e) {
        e.printStackTrace();
        return;
    }

    Bitmap bmp = BitmapFactory.decodeFileDescriptor(fd.getFileDescriptor());
     ImageButton imgButton = (ImageButton)findViewById(R.id.imageButton2);
    imgButton.setImageBitmap(bmp);
}   
 }

1 个答案:

答案 0 :(得分:0)

您不希望将图像存储在要将图像存储在内部或外部存储器中的数据库中,然后将该图像所在的Uri存储在数据库中