java - 无法从另一个活动传递值(仅传递空值)
问题描述
我试图将变量从一个活动传递到另一个活动。在主要活动中,我设法使用 Toast 消息回调这些值。
MainActivity.java
search = (Button) findViewById(R.id.search);
search.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View w) {
subreg = spinner_subregion.getSelectedItem().toString();
reg = spinner_region.getSelectedItem().toString();
pettype = spinner_pet.getSelectedItem().toString();
petnumber = spinner_num.getSelectedItem().toString();
Intent intent = new Intent(MainActivity, Result.class);
intent.putExtra("subregion", subreg);
intent.putExtra("region", reg);
intent.putExtra("petnum", petnumber);
intent.putExtra("pet", pettype);
startActivity(intent);
}
}
但是,当我将值传递给 Result.java 时,它只返回 null。我尝试寻找解决方案,但仍然不适合我。任何人都知道我该如何传递数据?
结果.java
Bundle extras = getIntent().getExtras();
if (extras!=null){
subreg = extras.getString("subreg");
reg = extras.getString("reg");
pettype = extras.getString("pettype");
petnumber = extras.getString("petnumber");
}
解决方案
试试这个 MainActivity.java
Intent myIntent = new Intent(this, NewActivity.class);
intent.putExtra("subregion", subreg);
intent.putExtra("region", reg);
intent.putExtra("petnum", petnumber);
intent.putExtra("pet", pettype);
startActivity(myIntent)
结果.java
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.view);
Intent intent = getIntent();
if(intent ==null){
........
.......
}else{
String subregion= intent.getStringExtra("subregion");
String region= intent.getStringExtra("region");
String petnum= intent.getStringExtra("petnum");
String pet= intent.getStringExtra("pet");
}
}
推荐阅读
- c# - 带有导航页面的 Xamarin 表单弹出页面
- python - Python:“IndexError:列表索引超出范围”密码生成器
- html - 在 SVG 元素的 ForeignObject 的 HTML 中呈现自定义外部字体时遇到问题
- angular - Angular - 如何使用 @Pipe 装饰器将相对链接添加到属于文本的单词
- java - 无法使用 Okhttp 获取响应 cookie
- php - 无法在 Travis-CI 中运行 Laravel 测试
- android - 样式化主题按钮 android (xml)
- php - 如何在 php 中将 mysql 行从在线主机发送到远程 wamp 服务器数据库?
- serverless-framework - 读取 serverless.yml 中的 package.json 名称
- haskell - 关于映射多参数函数的最终结果