我是Android的初学者这是我的第一个应用程序,所以我得到了很多疑惑。我们可以在三个或更多条件下使用一个按钮。我确实喜欢这个但它不起作用帮助我(在这个源和目的地是两个不同的自动完整textview)
enter code here
String[] source ={"Chennai","Hyderabad","Bangalore"};
String[] destination ={"Chennai","Hyderabad","Bangalore"};
if(source[0].equals("Chennai") &&destination[1].equals("Hyderabad"))
{
Button button=(Button)findViewById(R.id.searchtrain_button);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent i=new Intent(MainActivity.this,Main2Activity.class);
startActivity(i);
}
});
}
else if (source[0].equals("Chennai") && destination[2].equals("Bangalore"))
{
Button button1=(Button)findViewById(R.id.searchtrain_button);
button1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent i1=new Intent(MainActivity.this,Main3Activity.class);
startActivity(i1);
}
})
答案 0 :(得分:1)
你不认为你必须检查你的autocompletetextview
文本而不是你的数组,因为你的数组条件总是如此,所以它永远不会成为其他条件。
Button button=(Button)findViewById(R.id.searchtrain_button);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(yourSourceAutoCompleteTextView.getText().toString().equals("Chennai") && yourDestinationAutoCompleteTextView.getText().toString().equals("Hyderabad")) {
Intent i=new Intent(MainActivity.this,Main2Activity.class);
startActivity(i);
}
else if(yourSourceAutoCompleteTextView.getText().toString().equals("Chennai") && yourDestinationAutoCompleteTextView.getText().toString().equals("Bangalore")){
Intent i=new Intent(MainActivity.this,Main3Activity.class);
startActivity(i);
}
}
});
答案 1 :(得分:0)
你可以像这样尝试
final String[] source ={"Chennai","Hyderabad","Bangalore"};
final String[] destination ={"Chennai","Hyderabad","Bangalore"};
Button button=(Button)findViewById(R.id.searchtrain_button);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(source[0].equals("Chennai") && destination[1].equals("Hyderabad")) {
Intent i=new Intent(MainActivity.this,Main2Activity.class);
startActivity(i);
}
else if(source[0].equals("Chennai") && destination[2].equals("Bangalore")){
Intent i=new Intent(MainActivity.this,Main3Activity.class);
startActivity(i);
}
}
});
它应该有用。
答案 2 :(得分:0)
不是根据条件创建新的OnClickListener(),而是可以在activity中实现侦听器并处理单击
在您的活动声明中:
public class ActivityNAme extends Activity implements View.OnClickListener {
然后,找到按钮和所有其他视图:
Button button=(Button)findViewById(R.id.searchtrain_button);
button.setOnClickListener(this);
最后实现onClick函数:
@Override
public void onClick(View v) {
switch (v.getId()){
... Handle other buttons ...
case R.id.searchtrain_button:
//your code here
break;
...
}
}