我有2个活动,我的第一个活动有3个不同ID的按钮,如何从点击的按钮向第二个活动传递ID?
**
我有3种不同类型的搜索,第二种活动是它的地图,如果点击按钮一将显示X结果,如果点击按钮2将显示Y结果,如果点击按钮3将显示N结果,我正在考虑制作使用按钮ID在地图上的IF,所以我可以检查一个用户点击**
答案 0 :(得分:3)
像这样传递
Intent intent = new Intent(CurrentActivity.this, NewActivity.class);
intent.putExtra("intVariableName", v.getId()); //where v is button that is cliked, you will find it as a parameter to onClick method
startActivity(myIntent);
像这样检索
Intent mIntent = getIntent();
int intValue = mIntent.getIntExtra("intVariableName", 0);
if(intValue == 0)
// error handling (Will come in this if when button id is invalid)
else
{
if(intValue == R.id.button1)
// Do work related to button 1
if(intValue == R.id.button2)
// Do work related to button 2
if(intValue == R.id.button3)
// Do work related to button 3
}
答案 1 :(得分:1)
点击按钮时使用getId()
,返回一个int。您可以将其保存在SharedPreferences
中,也可以通过Bundle
发送。
答案 2 :(得分:1)
通过Intent
Button myButton = <GetYourButton>;
Intent intent = new Intent(FirstActivity.this, SecondActivity.class);
intent.putExtra("FirstButtonID", myButton.getId());
startActivity(intent);
检索Activity
内的第二个onCreate
:
Intent intent = getIntent();
int buttonId = intent.getIntExtra("FirstButtonID", <DefaultButtonIDIncaseNoneIsPassed>);