【问题标题】:how to move back to a particular activity after Image capturing in android如何在android中捕获图像后移回特定活动
【发布时间】:2011-05-28 15:46:57
【问题描述】:

在我的应用程序中,我有两个活动,即 A 和 B。从活动 A 我通过单击按钮移动到活动 B。在活动 B 中,我有一个按钮,当用户单击它时,它会根据用户的意愿打开库或相机。

在这里,无论是用户选择图像还是捕获图像,图像都会被上传到服务器。在此活动结束后,我想自动显示活动 A。

如果用户点击默认的后退按钮,我已经编写了移动到 Activity A 的代码,但有时它会在上传过程后自动关闭,在这种情况下,我只想显示 Activity A 而不是 B。

【问题讨论】:

  • 在发布到服务器后是否收到任何响应,例如“发布成功”等...
  • 您正在使用 On Activity Result 方法?

标签: android android-activity camera


【解决方案1】:

用它来拍照并将其存储在 SD 卡中:

public void takePhoto() {

    Intent intent = new Intent("android.media.action.IMAGE_CAPTURE");
    File folder = new File(Environment.getExternalStorageDirectory() + "/Photo");
    boolean success = false;
    if(!folder.exists()){
        success = folder.mkdir();
    }         
    final Calendar c = Calendar.getInstance();
    String path=String.format("/sdcard/Photo/%s.png","Photos");
    photo = new File(path); 
    intent.putExtra(MediaStore.EXTRA_OUTPUT,Uri.fromFile(photo));
    imageUri = Uri.fromFile(photo);
    startActivityForResult(intent, TAKE_PICTURE);
}

使用 onActivityResult 方法:

@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    switch (requestCode) {
    case TAKE_PICTURE:
        if (resultCode == Activity.RESULT_OK) {
           // Use your server Post Coding :

           // Get the Rsponse as String and compare here

           if(response.equalsignoreCase("POST SUCCESS")){
            startActivity(new Activity (CurrentActivity.this,Activity2.class))
        }
        super.onActivityResult(requestCode, resultCode, data);
        }
    }

在从相机捕获的图像之后,它将来到 onActivityResult() 方法检查响应并相应地重定向页面。

【讨论】:

    【解决方案2】:

    在您完成 Activity B 后调用 finish();,它会可靠地关闭并返回到 Activity A。

    【讨论】:

      猜你喜欢
      • 2012-08-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-10-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-04
      相关资源
      最近更新 更多