You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android中Intent跳转Activity传值为空问题求助

问题排查与解决建议

1. 确认实体类实现序列化接口

如果userLogin是自定义实体类,必须实现Serializable或Parcelable接口才能通过Intent传递:

实现Serializable示例

public class UserLogin implements Serializable {
    private String nickname;
    // 其他字段、getter/setter方法
}

实现Parcelable示例(更高效)

public class UserLogin implements Parcelable {
    private String nickname;

    // 构造方法、getter/setter
    @Override
    public int describeContents() {
        return 0;
    }

    @Override
    public void writeToParcel(Parcel dest, int flags) {
        dest.writeString(nickname);
        // 其他字段依次写入
    }

    public static final Creator<UserLogin> CREATOR = new Creator<UserLogin>() {
        @Override
        public UserLogin createFromParcel(Parcel in) {
            return new UserLogin(in);
        }

        @Override
        public UserLogin[] newArray(int size) {
            return new UserLogin[size];
        }
    };

    protected UserLogin(Parcel in) {
        nickname = in.readString();
        // 其他字段依次读取
    }
}

2. 检查Intent传递与接收的键名一致性

  • AuthActivity传递代码:确保键名唯一且后续接收时一致
Intent intent = new Intent(AuthActivity.this, BasketActivity.class);
intent.putExtra("USER_LOGIN_DATA", userLogin);
startActivity(intent);
  • BasketActivity接收代码:使用相同键名,匹配序列化类型
// 对应Serializable
UserLogin userLogin = (UserLogin) getIntent().getSerializableExtra("USER_LOGIN_DATA");
// 对应Parcelable
// UserLogin userLogin = getIntent().getParcelableExtra("USER_LOGIN_DATA");

if (userLogin != null) {
    nicknameTv.setText(userLogin.getNickname());
}

3. 验证传递前userLogin对象的有效性

在AuthActivity传递前,确认对象及目标字段不为空:

if (userLogin != null && userLogin.getNickname() != null) {
    // 执行Intent跳转逻辑
} else {
    Log.e("AuthActivity", "userLogin或昵称字段未初始化");
}

4. 重写实体类的toString()方法

如果调用toString()才显示内容,说明你用的是Object默认toString()(输出对象内存地址),重写后才能显示实际字段值:

@Override
public String toString() {
    return "UserLogin{" +
            "nickname='" + nickname + '\'' +
            // 其他字段
            '}';
}

内容的提问来源于stack exchange,提问作者tryouq

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.05 07:04:59