Java 如何在按钮中分配值并在其他活动中显示值?
我想让ImageView作为按钮工作,因为我希望它能够单击并转到另一个活动。每个imageViewbutton都应该包含自己的值。问题是,我不知道如何将imageViewbutton中的值传递给另一个活动。这就是我迄今为止所尝试的:Java 如何在按钮中分配值并在其他活动中显示值?,java,android,eclipse,if-statement,switch-statement,Java,Android,Eclipse,If Statement,Switch Statement,我想让ImageView作为按钮工作,因为我希望它能够单击并转到另一个活动。每个imageViewbutton都应该包含自己的值。问题是,我不知道如何将imageViewbutton中的值传递给另一个活动。这就是我迄今为止所尝试的: public class ButtonClickHandler implements View.OnClickListener { public void onClick(View view) { String value = " ";
public class ButtonClickHandler implements View.OnClickListener {
public void onClick(View view) {
String value = " ";
switch(view.getId())
{
case R.id.imageView2:
value = "5";
break;
case R.id.imageView6:
value = "10";
break;
case R.id.imageView3:
value = "30";
break;
case R.id.imageView02:
value = "50";
break;
case R.id.imageView06:
value = "100";
break;
default:
break;
}
if(view.getId()==R.id.imageView2){
//get the value from switch case and send to other activity
}
从图像视图中获取值。使用附加功能并将其发送到其他活动 假设第一个活动是X,下一个活动是Y:-
//Include this in your code in the first activity inside your if condition
if(view.getId()==R.id.imageView2){
Intent main= new Intent(X.this, Y.class);
main.putExtra("key", value);
X.this.startActivity(main);
}
在Y活动onCreate
Intent intent = getIntent();
String value= intent.getStringExtra("key");
希望能有帮助
谢谢 您可以使用:
Intent i = new Intent(MainActivity.this,SecondActivity.class);
i.putExtra("YourValueKey", value);
startActivity(i);
这里
然后,您可以通过以下方式从第二项活动中获得:
Intent intent = getIntent();
String YourtransferredData = intent.getExtras().getString("YourValueKey");
您可以使用Bundle在Android中执行同样的操作
现在,在第二个活动中,从捆绑包中检索数据:
使用putExtra,您可以调用另一个活动,甚至可以在putExtra的帮助下将数据从一个活动发送到另一个活动,只需查看下面的代码即可了解:
Intent intent= new Intent(currentActivity.this,nextActivity.class);
intent.putExtra("Key",yourvalue);
startActivity(intent);
关于下一个检索数据的活动:
Intent intent = getIntent();
String yourvalue= intent.getExtras().getString("Key");
将数据传递到您的下一个活动,并像这样获取该活动中的数据
Intent intent = new Intent(Activity.this,SecondActity.class);
intent.putExtra("key",value);
startActivity(intent);
像这样:
Intent intent = getIntent();
String value = intent.getStringExtra("key");
您想启动一个新活动并将标签值传递给该活动吗? 如果是,那么只需创建一个意图并为其添加值,然后使用此意图启动其他活动 例如,如果值为5,则:-
Intent intent = new Intent(context) ;
intent.putExtra("key","5");
提及
以及新启动活动的创建方法:-
字符串值=getIntent.getStringExtrakey;参考试试这种方法,希望这能帮助你解决问题
实际上我有四项活动。单击第一个活动中的imageView时,它将转到第二个活动,但第一个活动中的值将用于第四个活动。。现在让我困惑的是,如何从第一个活动中获取要在第四个活动中显示的值:您可以简单地将前一个活动值传递到另一个活动。对不起,我无法想象如何进行。如果参考上面的代码,它将直接将值传递到第二个活动,对吗?在第四个活动中:String valueFromIntent=getIntent.getStringExtraYourKeyName;text2=TextView findViewByIdR.id.textView2;text2.setTextValue:+valuefromtintent;。。。我尝试这样做是为了显示值..但它变成value=null。请按上述方法将值从3传递到第4个活动。
Intent intent = new Intent(Activity.this,SecondActity.class);
intent.putExtra("key",value);
startActivity(intent);
Intent intent = getIntent();
String value = intent.getStringExtra("key");
Intent intent = new Intent(context) ;
intent.putExtra("key","5");
startActivity(intent);
public class ButtonClickHandler implements View.OnClickListener {
public void onClick(View view) {
switch (view.getId()) {
case R.id.imageView2:
Intent intent = new Intent(YourCurrentActivity.this, YourOtherActivity.class);
intent.putExtra("YourKeyName", "5");
startActivity(intent);
break;
case R.id.imageView6:
Intent intent = new Intent(YourCurrentActivity.this, YourOtherActivity.class);
intent.putExtra("YourKeyName", "10");
startActivity(intent);
break;
case R.id.imageView3:
Intent intent = new Intent(YourCurrentActivity.this, YourOtherActivity.class);
intent.putExtra("YourKeyName", "30");
startActivity(intent);
break;
case R.id.imageView02:
Intent intent = new Intent(YourCurrentActivity.this, YourOtherActivity.class);
intent.putExtra("YourKeyName", "50");
startActivity(intent);
break;
case R.id.imageView06:
Intent intent = new Intent(YourCurrentActivity.this, YourOtherActivity.class);
intent.putExtra("YourKeyName", "100");
startActivity(intent);
break;
default:
break;
}
}
};
String valueFromIntent = getIntent().getStringExtra("YourKeyName");
Intent intent = new Intent(YourSecondActivity.this, YourThirdActivity.class);
intent.putExtra("YourKeyName", valueFromIntent);
startActivity(intent);