我是Android开发的新手,当我找到基本知识,例如查看和保存我刚用相机应用程序拍摄的照片时,我就陷入了困境。到目前为止,这是我进入相机应用程序的代码
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(intent, CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE);
}
这是我不完整的OnActivityResult()方法
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
ImageView rondo = null;
Bundle extras = data.getExtras();
Bitmap mImageBitmap = (Bitmap) extras.get("data");
rondo.setImageBitmap(mImageBitmap);
setContentView(R.layout.activity_main);
}
这是我对此活动的布局
<LinearLayout 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=".MainActivity" >
<ImageView android:id="@+id/imageViewName"
android:layout_width="90dp"
android:layout_height="90dp"
android:scaleType="fitStart"
android:adjustViewBounds="true"
android:padding="10dp"
/>
/>
</LinearLayout>
我正在尝试获取我拍摄的图像并放入我在布局中指定的位置,如ImageView所示。但是,我拍照后我的应用程序一直在崩溃。我不知道我在做什么所以任何建议都有帮助
答案 0 :(得分:0)
您可能遇到的异常是NullPointerException
在OnActivityResult()
方法中,您ImageView rondo
引用了null
,然后您尝试从该空引用变量调用setImageBitmap()。所以很明显NullPointerException
要摆脱这种情况,你可以做到以下几点,
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
setContentView(R.layout.activity_main);
ImageView rondo = (ImageView)findViewById(R.id.imageViewName);
Bundle extras = data.getExtras();
Bitmap mImageBitmap = (Bitmap) extras.get("data");
rondo.setImageBitmap(mImageBitmap);
}
希望有所帮助!!!!!!!!!!!!!