使用相机更改应用程序内的图片
Change a picture inside app using camera
大家不好意思。对不起,如果我的英语不好,我不会说英语 :) 。我想制作一个 android 应用程序,它看起来像联系人应用程序。打开应用程序时有一些人的名字。当我单击一个名称时,它将打开详细信息 activity。在细节 activity 里面有一张默认图片。在那个图片的一角有一个按钮,当我点击它时会打开相机。但是如何用相机拍摄的照片更改默认图片?
这是我的详细信息Activity:https://drive.google.com/file/d/0B0CRcpLZ5j3DSGQ4X3RkUDJ6NTg/view?usp=sharing
![详情Activity][1]
这是我打开相机的代码
public void LaunchCamera(View v){
Intent i = getIntent();
i=new Intent("android.media.action.IMAGE_CAPTURE");
startActivity(i);
}
首先你应该调用 startActivityForResult(i,0)
然后你应该将以下代码添加到你的项目中!
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if(resultCode == RESULT_OK){
Bundle extras = data.getExtras();
bmp = (Bitmap) extras.get("data");
现在你的图片是 bmp 格式,你应该像这样定义 Bitmap bmp;
你可以这样做:-
public void LaunchCamera(View v){
Intent i = getIntent();
i=new Intent("android.media.action.IMAGE_CAPTURE");
startActivityForResult(i, 100);
}
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (resultCode == Activity.RESULT_OK) {
if (requestCode == 100) {
Bitmap image = (Bitmap) data.getExtra("data");
yourImageView.setImageBitmap(image);
}
}
}
大家不好意思。对不起,如果我的英语不好,我不会说英语 :) 。我想制作一个 android 应用程序,它看起来像联系人应用程序。打开应用程序时有一些人的名字。当我单击一个名称时,它将打开详细信息 activity。在细节 activity 里面有一张默认图片。在那个图片的一角有一个按钮,当我点击它时会打开相机。但是如何用相机拍摄的照片更改默认图片?
这是我的详细信息Activity:https://drive.google.com/file/d/0B0CRcpLZ5j3DSGQ4X3RkUDJ6NTg/view?usp=sharing
![详情Activity][1]
这是我打开相机的代码
public void LaunchCamera(View v){
Intent i = getIntent();
i=new Intent("android.media.action.IMAGE_CAPTURE");
startActivity(i);
}
首先你应该调用 startActivityForResult(i,0)
然后你应该将以下代码添加到你的项目中!
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if(resultCode == RESULT_OK){
Bundle extras = data.getExtras();
bmp = (Bitmap) extras.get("data");
现在你的图片是 bmp 格式,你应该像这样定义 Bitmap bmp;
你可以这样做:-
public void LaunchCamera(View v){
Intent i = getIntent();
i=new Intent("android.media.action.IMAGE_CAPTURE");
startActivityForResult(i, 100);
}
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (resultCode == Activity.RESULT_OK) {
if (requestCode == 100) {
Bitmap image = (Bitmap) data.getExtra("data");
yourImageView.setImageBitmap(image);
}
}
}