繁体   English   中英

无法获得意图的额外费用

[英]cant get the intent extras

我使用putextras将数据发送到其他页面

 Intent i = new Intent(Camerapage.this, Camera2.class);
      i.putExtra("mood","happy");
      i.putExtra("anger","anger");
      i.putExtra("fear","fear");
      startActivity(i);

当我收到它时

 mood.setText(intent.getStringExtra("mood"));
        happy.setText(String.valueOf(intent.getIntExtra("happiness",1)));
        fear.setText(String.valueOf(intent.getIntExtra("fear",1)));
         anger.setText(String.valueOf(intent.getIntExtra("anger",1)));

我试图发表评论以了解它确实崩溃了……它处理了“情绪”值,但是当我要求愤怒和恐惧时它崩溃了……

尝试这个

mood.setText(intent.getStringExtra("mood"));
    happy.setText(String.valueOf(intent.getStringExtra("happiness")));
    fear.setText(String.valueOf(intent.getStringExtra("fear")));
     anger.setText(String.valueOf(intent.getStringExtra("anger")));

更改为getStringExtra()

   mood.setText(intent.getStringExtra("mood"));
   happy.setText(intent.getStringExtra("happiness"));
   fear.setText(intent.getStringExtra("fear"));
   anger.setText(intent.getStringExtra("anger"));

永远不会设置happiness变量

happy.setText(String.valueOf(intent.getIntExtra("happiness")));

另外,您正在发送String值,因此请使用getStringExtra()而不是getIntExtra()

在这一行,您将收到一个字符串:

 mood.setText(intent.getStringExtra("mood"));

但是在这行中也是String,但是您正在尝试通过getIntExtra()获得值!

  happy.setText(String.valueOf(intent.getIntExtra("happiness",1)));
  fear.setText(String.valueOf(intent.getIntExtra("fear",1)));
  anger.setText(String.valueOf(intent.getIntExtra("anger",1)));

尝试使用getStringExtra()更改此行:

  mood.setText(intent.getStringExtra("mood"));
  happy.setText(intent.getStringExtra("happiness"));
  fear.setText(intent.getStringExtra("fear"));
  anger.setText(intent.getStringExtra("anger"));

并记住,您错过了通过intent happinessintent

 i.putExtra("happines",":)");

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM