gpt4 book ai didi

android - 根据点击按钮打开不同的 Activity android

转载 作者:行者123 更新时间:2023-11-29 15:13:39 25 4
gpt4 key购买 nike

在我的开始(主页)屏幕上,我有 3 个按钮。 Button_1Button_2Button_3。它们都打开相同的 Activity B。所以在这里我需要根据在主屏幕上单击哪个按钮在第二个 Activity 后打开不同的 Activity C。我可以使用 2 个按钮来实现,但是当我尝试使用带有 elseif 的第三个按钮时,它无法正常工作。这是我尝试的方式。主屏幕

Button_1.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View v) {
Intent intent = new Intent(MainActivity.this, SecondActivity.class);
intent.putExtra("isButtonClicked",true);
startActivity(intent);

}
});

Button_2.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View v) {
Intent intent = new Intent(MainActivity.this, SecondActivity.class);
intent.putExtra("button", true);
startActivity(intent);

}
});
Button_3.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View v) {
Intent intent = new Intent(MainActivity.this, SecondActivity.class);
intent.putExtra("isButtonClicked",false);
startActivity(intent);

}
});

这里是SecondActivity

boolean isButton = getIntent().getBooleanExtra("isButtonClicked",false); 
boolean button = getIntent().getBooleanExtra("button",true);
if(isButton)
{
Intent newActivity = new Intent(SecondActivity.this, ThirdActivity.class);
newActivity.putExtra("Position", Position);
newActivity.putExtra("resultServer", resultServer);

newActivity.putExtra("text", MyArrList.get(position).get("text").toString());
newActivity.putExtra("name", MyArrList.get(position).get("name").toString());
startActivity(newActivity);
}
else if (button)
{

Intent newActivity = new Intent(SecondActivity.this, FourthActivity.class);
newActivity.putExtra("Position", Position);
newActivity.putExtra("resultServer", resultServer);
newActivity.putExtra("id", MyArrList.get(position).get("id").toString());
startActivity(newActivity);
}
else
{
Intent newActivity = new Intent(SecondActivity.this, FifthActivity.class);
newActivity.putExtra("Position", Position);
newActivity.putExtra("resultServer", resultServer);
newActivity.putExtra("id", MyArrList.get(position).get("id").toString());
startActivity(newActivity);
}

如您所见,在所有 3 个按钮都相同的第二个 Activity 之后,我想加载不同的内容。如果我将它与 if{}else{} 放在一起,即对于两个按钮,效果很好。但现在我在 Button_2Button_3 上得到了相同的结果。

最佳答案

刚刚发现:

boolean button = getIntent().getBooleanExtra("button",true);

应该总是返回true。因为它有一个默认值设置为 true。所以你的 elseif 将始终有效..如果 Button_1 没有被点击!

修复:

boolean button = getIntent().getBooleanExtra("button",false);

关于android - 根据点击按钮打开不同的 Activity android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27206045/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com