使用ActivityGroup (ViewPager)时,Result 无响应

本文介绍了解决Android应用程序中子Activity启动相机并正确处理返回结果的方法。关键在于将结果处理逻辑放置于父Activity中,并通过特定方式从子Activity启动相机。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Since you are starting Activity for result inside a child Activity (i.e TakePicture.class), and Android will only allow single nested layer of child Activity(means child Activity cannot nest another child Activity). And you are probably handling the result in your child Activity(i.e TakePicture.class).

由于开始的Activity里面已经有 子Activity,并且Android 只允许子Activity的一个嵌套层(指子Activity不能嵌套在另一个子Activity)。你有可能handling Result 在你的子Activity里面。

So the solution to your problem is to handle that result inside your parent Activity(OpenBeeActivityGroup)'s onActivityResult() and then send your result to the active Activity. inside your child Activity start your startActivityForResult() from parent Activity  .

因此解决方案就是:在你的父Activity的onActivityResult()里面handle result 使之 在你的子Activity里面开始startActivityForResult(). 

子Activity:
getParent().startActivityForResult(cameraIntent,Global.CAMERA_PIC_REQUEST);

Activity:
protected void onActivityResult(int requestCode, int resultCode, Intent data) 
{
    if (resultCode == Activity.RESULT_OK) 
    {
        switch(requestCode)
        {
        case Global.CAMERA_PIC_REQUEST: // global variable to indicate camera result
        Activity activity = getLocalActivityManager().getCurrentActivity();
        activity.onActivityResult(requestCode, resultCode, data);
        break;
        }

    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值