这就是我启动Tab Activity的方法
  Intent i = new Intent("walk.me.TAB");
        startActivityForResult(i, STATIC_RESULT);
注意:STATIC_RESULT = -1或RESULT_OK;
这就是我完成Tab活动的方式
((Button)viewItem.findViewById(R.id.gotherefav)).setOnTouchListener(new OnTouchListener(){
    @Override
    public boolean onTouch(View v, MotionEvent event) {
        if(ime!=null)
        {
        b.putString("ime",ime.toString());
        b.putIntArray("koordinati&kategorija", coordAndCat );
        b.putBoolean("klik", true);
        FinishWithResult(b);
        }
        return false;
    }});
public void FinishWithResult(Bundle b)
{
    Intent i = getIntent();
    i.putExtras(b);
    setResult(Activity.RESULT_OK, i);
     Log.i("in FINISH", "settig Activity Result");  
    finish();   
}
这是我的OnActivityResult实现:
@Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
          Log.i("in OnActivityResult", "Activity Result");  
          Toast.makeText(getBaseContext(), "DOJDE", Toast.LENGTH_LONG).show();
        super.onActivityResult(requestCode, resultCode, data);
          Log.i("in OnActivityResult", "Activity Result"); …我正在调用Activity AddRecordActivityfrom Activity ViewRecordsActivity.两者都延伸AppCompatActivity.
我打电话给AddRecordActivity,
startActivityForResult(intent, Constants.MY_REQUEST_CODE);
在AddRecordActivity我打电话添加记录后,下面的代码:
Intent intent = new Intent(AddRecordActivity.this, ViewRecordsActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
intent.putExtra(Constants.EXTRA_OPERATION_SUCCESS_TEXT, "Record added");
setResult(RESULT_OK, intent);
startActivity(intent);
finish();
在ViewRecordsActivity,
    @Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    if (resultCode == RESULT_OK) {
        switch (requestCode) {
            case Constants.MY_REQUEST_CODE: {
                Toast.makeText(this, data.getStringExtra(Constants.EXTRA_OPERATION_SUCCESS_TEXT), Toast.LENGTH_SHORT).show();
            }
            break;
        }
    }
}
我不明白为什么事件onActivityResult没有被触发?
我的BaseActivity具有register()和unregister()方法:
public class BaseActivity extends AppCompatActivity{
    ...
    @Override
    protected void onResume() {
        super.onResume();
        // Register ourselves so that we can provide the initial value.
        BusProvider.getInstance().register(this);
    }
    @Override
    protected void onPause() {
        super.onPause();
        // Always unregister when an object no longer should be on the bus.
        BusProvider.getInstance().unregister(this);
    }
    protected void setFragment(Fragment fragment){
        FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
        transaction.replace(ROOT_CONTAINER_ID, fragment);
        if(!isFinishing()) {
            transaction.commitAllowingStateLoss();
        }
    }
}
我有ChildActivity,它将DoneEvent触发到FrDetails片段,并且工作正常。
public class ChildActivity extends BaseActivity implements View.OnClickListener{
    private ImageView btnDone;
    @Override
    public void onCreate(Bundle savedInstanceState){
        super.onCreate(savedInstanceState); …我试图将数据向后传递给一个活动,但是我永远onActivityResult无法调用我的函数.当我开始新活动时,我会创建一个像常规一样的新意图
 Intent intent = new Intent(this, NewLoanCost.class);
 intent.putExtra("defaultsArray", jDefaultsArray.toString());
 intent.putExtra("loanSelection", loanSelection);
 intent.putExtra("buyerSellerSelection", buyerSellerSelection);
 startActivity(intent);
当我想回到上一个活动时,我会覆盖后退按钮以创建新意图并存储数据
@Override
public void onBackPressed() {
    Intent intent = new Intent();
    intent.putExtra("fullCosts", fullCosts.toString());
    setResult(RESULT_OK, intent);
    super.onBackPressed();
}
但在第一个活动中,我甚至无法调试吐司出现.我错过了一些公然的东西吗?
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
    //super.onActivityResult(requestCode, resultCode, data);
    Toast.makeText(this, "onActivityResult", Toast.LENGTH_SHORT).show();
    if (requestCode == 1) {
        if(resultCode == RESULT_OK){
            try {
                jDefaultsArray = new JSONArray(data.getStringExtra("fullCosts"));
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }
}
我正在尝试学习如何在应用程序中使用相机,这就是我所达到的,想法是有一个按钮打开相机,我们拍照后图片会立即显示在屏幕上,第二个按钮是从早期版本无法立即显示图片,必须单击以显示它.
无论如何我的问题是,这个代码没有显示在Android 6的图片..在我的Android 5设备上它工作正常..图片保存在"sdcard/camera_app/cam_image.jpg"路径的任何一种方式和按钮没有还没有工作,所以我在思考一下imageview已经从android 5改为6了?问题是如何使这个功能为Android 6手机
public class Add_Comment_Picture extends AppCompatActivity {
    static final int CAM_REQUEST = 1;
    ImageView imageView;
    Button button;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_add__comment__picture);
        button = (Button) findViewById(R.id.button);
        imageView = (ImageView) findViewById(R.id.imageView);
        Button button2 = (Button) findViewById(R.id.button3);
        button.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
                Intent camera_intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
                File file = getFile();
                camera_intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(file));
                startActivityForResult(camera_intent , CAM_REQUEST);
            }
        });
        button2.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
                String path = "sdcard/camera_app/cam_image.jpg";
                imageView.setImageDrawable(Drawable.createFromPath(path)); …阅读本文档https://developer.android.com/training/camera/photobasics后,我想拍摄一张照片并将照片的 uri 存储到给定的变量中。问题是我使用takePictureIntent.putExtra(Constants.INTENT_EXTRA_VARNAME, variable)and将变量名称和 uri 存储到意图中takePictureIntent.putExtra(MediaStore.EXTRA_OUTPUT, photoURI),但在 onActivityResult 中意图数据为空,并且存储的变量和 uri 都不为空。我需要知道 uri 和变量。我究竟做错了什么?
我需要将信息作为意图数据传递,因为触发显示相机的操作的类与活动类不同。
带有动作的类:
    Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
    takePictureIntent.putExtra(Constants.INTENT_EXTRA_VARNAME, variable);
    // Ensure that there's a camera activity to handle the intent
    if (takePictureIntent.resolveActivity(SectionManager.getInstance().getCurrentActivity().getPackageManager()) != null) {
        // Create the File where the photo should go
        File photoFile = null;
        try {
            photoFile = createImageFile();
        } catch (IOException ex) {
            ex.printStackTrace();
        }
        // Continue only if the File was successfully created
        if (photoFile …camera android android-intent android-camera onactivityresult
我正在尝试将值K从活动A传递到B.当button单击活动B中的保存时,它将再次将值k传递给活动A. 但如果我想返回A,应用程序崩溃了.
活动A中的一些代码片段
     public void onClick(DialogInterface dialog, int item) {
                    if (item == 0) {
                        Intent intent = new Intent(getActivity().getApplicationContext(), Project1.class);
                       intent.putExtra("k",k);
                        startActivityForResult(intent, 0);
                    } else if (item == 1) {
                        Intent intent = new Intent(getActivity().getApplicationContext(), Petrol.class);
                       intent.putExtra("k", k);
                        startActivityForResult(intent, 1);
                    }
 public void onActivityResult(int requestCode, int resultCode, Intent data) {
        int button = data.getIntExtra("k1", 0);
        if (button == 1) {
            switch (requestCode) {
                case 0:
                    String result = data.getStringExtra("text");
                    String b = data.getStringExtra("a");
                     as=Long.parseLong(result);
                    c.setText("            " + …