activity:
public class CamareActivity extends Activity {
//把拍摄的照片保存在公共目录中 --DCIM目录(专用于保存照片的)
String path=Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DCIM)
+"/test.jpg";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.pic_camare);
}
public void clickBtn(View view)
{
Intent intent=new Intent();
intent.setAction(MediaStore.ACTION_IMAGE_CAPTURE);
intent.putExtra(MediaStore.EXTRA_OUTPUT,
Uri.fromFile(new File(path)));
startActivityForResult(intent,0x101);
}
//当照片拍摄完毕会执行这个回调方法
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if(requestCode==0x101 && resultCode==this.RESULT_OK)
{
//查看拍摄的图片
Intent intent=new Intent();
intent.setAction(Intent.ACTION_VIEW);
//传入要查看的图片的uri
intent.setDataAndType(Uri.fromFile(new File(path)),"image/jpg");
startActivity(intent);
}
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.camare, menu);
return true;
}
}
xml:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".CamareActivity" >
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:onClick="clickBtn"
android:text="拍照" />
</RelativeLayout>