그림을 캡처하고 프로필 그림으로 지정할 의도가있는 카메라를 호출하는 활동이 있습니다. 액티비티는 잘 동작하지만, 다시 클릭하여 액티비티를 다시 열면 그림이 더 이상 표시되지 않습니다.활동이 다시 열릴 때 캡처 한 그림 표시
사용자가이 활동을 시작할 때마다 어떻게 표시합니까? 여기에 내가 profilePicture.setImageBitmap(bm)
onResume()
하지만 내 응용 프로그램 충돌 전화를 시도
public class MyAccountActivity extends Activity {
private static final int CAMERA_REQUEST = 1888;
private TextView name;
private TextView userId;
private TextView address;
private TextView email;
private TextView phone;
private ImageButton profilePicture;
private Bitmap bm;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_my_account);
setUpViews();
Log.v("test","this is test: "+LoginActivity.user.getName());
}
private void setUpViews() {
//setting up views
//calling user details from User [] instance
}
public void ViewPicture(View v) {
Intent intent = new Intent(
android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
intent.putExtra(MediaStore.EXTRA_OUTPUT,
MediaStore.Images.Media.EXTERNAL_CONTENT_URI.getPath());
startActivityForResult(intent, CAMERA_REQUEST);
}
protected void onActivityResult(int requestCode, int resultCode, Intent data)
{
super.onActivityResult(requestCode, resultCode, data);
bm = (Bitmap) data.getExtras().get("data");
profilePicture.setImageBitmap(bm);
MediaStore.Images.Media.insertImage(getContentResolver(), bm, null, null);
ByteArrayOutputStream baos = new ByteArrayOutputStream();
bm.compress(Bitmap.CompressFormat.JPEG, 100, baos); //bm is the bitmap object
byte[] b = baos.toByteArray();
}
그 활동에 대한 내 코드입니다. 도움을 주시면 감사하겠습니다. 이미지를 표시 할 때마다
는 onResume에서 setupViews를 호출하려고 사용합니다. 액티비티를 만들 때 모든 것을 설정했지만, 액티비티가 다시 돌아 오면 다시 생성되지 않으므로 이미지가 적용되고 있다고 생각하지 않습니다. 이미지를 설정하려고 할 때 어떤 충돌이 발생합니까? – toadzky
빠른 답장을 보내 주셔서 감사합니다 ... 귀하의 제안을 즉시 테스트하고 아플 응답을 게시하십시오. 감사합니다 –
@toadzky 그것은 아무것도 변경하지 못했습니다. 나는 결과에서 의도를 얻을 때 profilePicture를 설정했기 때문에 생각합니다. 휴대 전화에서 저장된 위치에서 사진을로드 할 수 있다면 어떨까요? 그게 가능하니? 다시 한 번 감사드립니다 –