请帮助解释此代码
当我按下它以将文字和数字发送到另一个活动时,我想要的第一个活动中有一个按钮
但我想在TextView 1中显示文本,在TextView2中显示数字 我成功地将文本发送到指定位置,但发送号码时遇到问题
我尝试了许多代码并且故障仍然存在。 这是您用于成功发送文本但未能发送号码的最后一个代码
第一项活动的代码:
Intent intent = new Intent( this, Order.class );
String keyIdentifer = null;
intent.putExtra( "String", text );
intent.putExtra( "Int", price );
startActivity( intent );
第二个活动的代码:
TextView userName = (TextView)findViewById(R.id.the_order);
Intent iin= getIntent();
Bundle b = iin.getExtras();
if(b!=null)
{
String j =(String) b.get("String");
userName.setText(j);
}
TextView userName1 = (TextView)findViewById(R.id.price);
Intent ii= getIntent();
Bundle bb = ii.getExtras();
if(bb!=null)
{
int jj =(int) bb.get("Int");
userName1.setText(jj);
}
答案 0 :(得分:0)
获取int为:
int jj = yourintent.getIntExtra("Int");
您不需要先获取捆绑包,这种方式是围绕您正在做的事情,并为您提供相同的值
另一个错误是您在setText方法中设置了一个int值。
此方法接受int但它期望int值为资源标识符。由于您传递的值不是资源ID,因此无法找到资源。
试
userName1.setText(String.valueOf(jj));
基本上,如果要将TextView值设置为int,请永远不要忘记将其转换为字符串。抛出的错误是可怕的措辞,并没有远程表明这是实际问题。
答案 1 :(得分:0)
Intent intent = new Intent(this, Activity.class);
intent.putExtra("Int", 4);
startActivity(intent);
在活动中它会......
Intent intent = getIntent;
int getInt = intent.getIntExtra("Int");
System.out.println(getInt);
设置一个testview:
textView.setText(String.valueOf(getInt);
答案 2 :(得分:0)
您的问题是您在editText中设置了Int值:
int jj =(int) bb.get("Int");
userName1.setText(jj);
设置int值时只需执行此操作:
int jj =(int) bb.get("Int");
userName1.setText(jj+"");
答案 3 :(得分:0)
只需更改
bb.get("Int");
到
bb.getInt("Int");