我希望我的应用程序是这样的,当editText1的值(2)没有括号时,按下按钮(使用onClick =" k")将导航到MainActivity2。如果文本是(3),则活动MainActivity3将打开。 我猜它会使用If函数。我怎样才能在我的应用程序中实现这一点? 抱歉愚蠢的问题,我只是一个新手。 ; - ;
答案 0 :(得分:0)
在onClickListener中,将edittext中的数据作为字符串获取并使用switch-case进行比较:
String string = editText1.getText().toString();
switch(string){
case "2":
//Start MainActivity2
break;
case "3":
//Start MainActivity3
break;
}
答案 1 :(得分:0)
我不确定你为什么要这样做,但这里有你可以做的:
将EditText
属性设置为仅接受数字/数字
onClick()
,访问
editText1.getText().toString()
完成后,请使用switch-case
语句启动
期望的活动。
答案 2 :(得分:0)
Try this:-
String string = editText1.getText().toString();
if(string.equals("2"))
{
Intent i = new Intent(getApplicationContext(),MainActivity2.class);
startActivity(i);
}
else if(equals("3"))
{
Intent i = new Intent(getApplicationContext(),MainActivity3.class);
startActivity(i);
}
答案 3 :(得分:0)
删除switch-case
中的方法 case "2":
public void kden(View v) {
// TODO Auto-generated method stub
Intent i = new Intent(getApplicationContext(),MainActivity2.class);
startActivity(i);
}
break;
并试试这个
case "2":
Intent i = new Intent(getApplicationContext(),MainActivity2.class);
startActivity(i);
break;
答案 4 :(得分:0)
首先,从EditText
中检索值。如果您只想要数字/数字,那么您可以在EditText
的属性中设置它。现在,我们将其视为接受string
值。假设EditText
的标识符为'editText1':
String targetActivity = editText1.getText().toString();
其次,您需要使用条件语句来评估要启动的Activity
。 @Sree在他的回答中使用了switch-case
,这里我将使用if
语句,因为它们更容易阅读和理解。
Intent i;
if(targetActivity.equals("k")){
i = new Intent(YourCurrentActivity.this, StartSomeActivity.class);
startActivity(i);
}
else if(targetActivity.equals("3")){
i = new Intent(YourCurrentActivity.this, StartAnotherActivity.class);
startActivity(i);
}
显然,您可以更改要比较的值,我使用了k
和3
,因为这些是您在问题中提供的示例。另外,请务必将当前活动名称的“YourCurrentActivity”和“StartSomeActivity”以及“StartAnotherActivity”替换为您要启动的欲望活动的名称。
答案 5 :(得分:0)
至少在评论中正确发布代码......
String
阅读Why can't I switch on a String? 有价值的你可以在按钮点击事件
上使用它int key = Integer.parseInt(edit.getText().toString());
Intent i;
switch (key) {
case 1:
i = new Intent(MainActivity.this,MainActivity2.class);
break;
case 2:
i = new Intent(MainActivity.this,MainActivity3.class);
break;
}
startActivity(i);