相关疑难解决方法(0)

如何在Android应用程序中的活动之间传递数据?

我有一个场景,通过登录页面登录后button,每个都会有一个注销activity.

点击后sign-out,我将通过session id已登录用户登出.任何人都可以指导我如何让session id所有人都可以使用activities吗?

任何替代这种情况

android android-intent android-activity

1293
推荐指数
29
解决办法
88万
查看次数

如何在Android上管理startActivityForResult?

在我的活动中,我正在通过主要活动调用第二个活动startActivityForResult.在我的第二个活动中,有一些方法可以完成此活动(可能没有结果),但是,只有其中一个返回结果.

例如,从主要活动我称之为第二个.在这项活动中,我正在检查手机的某些功能,例如是否有相机.如果它没有,那么我将关闭此活动.此外,在准备期间MediaRecorderMediaPlayer如果出现问题,我将关闭此活动.

如果其设备有摄像头并完全录制,则在用户点击完成按钮后录制视频后,我会将结果(录制视频的地址)发送回主要活动.

如何检查主要活动的结果?

android android-intent android-activity startactivityforresult

935
推荐指数
9
解决办法
66万
查看次数

OnActivityResult 方法已弃用,有什么替代方法?

我最近发现 onActivityResult已被弃用。我们应该怎么处理呢?

为此引入了任何替代方案?

显示带有删除 onActivityResult 的代码的图像,表示已弃用

android android-fragments android-activity onactivityresult

192
推荐指数
11
解决办法
10万
查看次数

如何将值从一个活动传递到上一个活动

如何将值从一个屏幕传递到其上一个屏幕?

考虑这种情况:我有两个活动.第一个屏幕有一个TextView按钮,第二个活动有一个EditText按钮.

如果我单击第一个按钮,则必须移至第二个活动,此处用户必须在文本框中键入内容.如果他按下第二个屏幕上的按钮,则文本框中的值应移至第一个活动,并应显示在第一个活动中TextView.

android android-activity

94
推荐指数
3
解决办法
9万
查看次数

startActivityForResult的替代方案

编辑:将Fragment更改为Partial,当我写这篇文章时,我对Fragment对象一无所知.

我有一个部分包含一个按钮来调出联系人列表.这样做需要打电话

startActivityForResult( new Intent(Intent.ACTION_PICK, Contacts.CONTENT_URI), MY_REQUEST_CODE );
Run Code Online (Sandbox Code Playgroud)

并在我的Activity中处理结果,如:

public void onActivityResult( int requestCode, int resultCode, Intent data ) {
    if (resultCode == RESULT_OK) {
        switch (requestCode) {
            case MY_REQUEST_CODE: {
                Address address = contact_address( data );
                if (address != null) {
                    // do something with address
                }
            } break;
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

根据我在Activity布局中包含部分的方式,在其他部分中可能有几层深度,并且可能有多个部分实例.

我想避免将MY_REQUEST_CODE的ID一直传播到调用活动的部分 - 或其任何变体,比如将onClickListener分配给按钮 - 我不希望顶级UI关注部分如何完全是建造的.

有没有一种标准的方法来实现这一目标?在我看来,如果可以使onActivityResult接受Uri而不是int代码,则可以避免传播.我希望我在这里遗漏了一些明显的东西......

android

4
推荐指数
2
解决办法
7832
查看次数

将数据从新活动传递到旧活动?

我正在尝试从新活动接收旧活动的数据.

换句话说,较新的Activity必须在完成时将意图数据发送到旧活动.

我用于setResult(resultcode, NewActivity.this.getIntend);更新的活动和

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    if(data != null) {
        // doing something
    }     
}
Run Code Online (Sandbox Code Playgroud)

关于旧活动.接收来自较新活动的打算数据.

但是这段代码不起作用.始终获取数据为空.

如何将完成活动的意图数据发送到父活动?

另外,在创建新Activity时,我使用以下代码:

Intent intent = new Intent(Intent.ACTION_PICK);
intent.setClass(OldActivty.this, NewActivity.class);
startActivityForResult(intent, 0);
Run Code Online (Sandbox Code Playgroud)

我不明白为什么总是从新的获取空目标数据.

怎么解决?

请指教.

谢谢,

android android-activity

3
推荐指数
1
解决办法
7317
查看次数

onActivityResult() 未在 onBackPressed() 上触发

当按下“返回”按钮时,我只想将对象信息从 Activity2 交换回 Activity1。 一切正常,除了在 Activity1onActivityResult(..)中永远不会被触发。因此我无法访问意图信息。有谁知道为什么?

我检查了这些答案,但它们不起作用:

按下后退按钮时 setResult 不起作用

按下时如何将数据从第二个活动传递到第一个活动?- 安卓

如何将值从一个活动传递到前一个活动

将数据发送到父活动 onBackPressed

我的代码(如果您需要更多,请告诉我):

AndroidManifest.xml:

        <activity
            android:name="com.example.Activity1"
            android:label="@string/app_name"
            android:theme="@style/AppTheme.NoActionBar"
            android:screenOrientation="portrait">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

        <activity
            android:name="com.example.Activity2"
            android:theme="@style/AppTheme.NoActionBar"
            android:screenOrientation="portrait">
        </activity>
Run Code Online (Sandbox Code Playgroud)

Activity1.java:

public class MainActivity extends AppCompatActivity {

    // other stuff...

    private void showActivity2(Test test) {
        Intent intent = new Intent(this, Activity2.class);
        intent.putExtra("test", test.getSerializableObject());
        startActivityForResult(intent, Activity.RESULT_OK);
    }

    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        if (resultCode …
Run Code Online (Sandbox Code Playgroud)

android onactivityresult onbackpressed

2
推荐指数
1
解决办法
2342
查看次数

Android覆盖onBackPressed()以发送意图

我试图覆盖onBackPressed()以像这样的意图将数据发送到前一个屏幕;

    thisUserObj = (User) getIntent().getSerializableExtra("UserObj");


    Intent intent = new Intent();
    intent.putExtra("UserObj", thisUserObj);
    setResult(RESULT_OK, intent);
Run Code Online (Sandbox Code Playgroud)

但是当按下按钮时,UserObj值为null,但是这可以从onClickListener开始

    Intent intent = new Intent(getApplication(), MainMenuActivity.class);
    intent.putExtra("UserObj", thisUserObj);
    startActivity(intent);
Run Code Online (Sandbox Code Playgroud)

android

0
推荐指数
1
解决办法
986
查看次数