如何退出循环或onClick(android)?

时间:2012-01-19 09:35:05

标签: java android

退出onclick时遇到问题。

该程序使用共享首选项来获取输入, 如果String name = "User",程序将不允许用户单击此按钮,只显示警告对话框。

这是我的代码:

public void onClick(View v) {                   
    name = shared.getString("sharedname", "User");
    gender = shared.getInt("sharedgender", 0);
    age = shared.getInt("sharedage", 0);
    weight =shared.getInt("sharedweight", 0);
    height = shared.getInt("sharedheight", 0);
    if(name=="User")
    {
        new AlertDialog.Builder(cont)
        .setMessage("Please input your information first")
        .setNeutralButton("OK", null).show();
        break;//error
    }
//code code code, rest of the code to be cancelle

4 个答案:

答案 0 :(得分:3)

使用equals(Object)方法代替==运算符

if(name.equals("User"))
                {
                    new AlertDialog.Builder(cont)
                    .setMessage("Please input your information first")
                    .setNeutralButton("OK", null).show();
                    return ;
                }

java.lang.Object的equals()方法与==运算符的作用相同;也就是说,它测试对象身份而不是对象相等。然而,equals()方法的隐式契约是它测试平等而不是身份。因此,在决定是返回true还是false之前,大多数类将使用在字段比较中进行字段化的版本覆盖equals()。

答案 1 :(得分:0)

不要使用break,只需使用return;语句。

答案 2 :(得分:0)

使用:

if(name.equalsIgnoreCase("User")){
// your code
  return;
}

答案 3 :(得分:0)

AlertDialog.Builder builder = new Builder(ValueSelling.this);
AlertDialog alertDialog = builder.create();
                    alertDialog.setTitle(getResources().getString(R.string.termsTitle));
                    alertDialog.setMessage(getResources().getString(R.string.terms));
alertDialog.setCancelable(false);
alertDialog.setButton("Okay", new DialogInterface.OnClickListener(){

                        @Override
                        public void onClick(DialogInterface dialog, int which) {
                            finish();
                        }});

                    alertDialog.setButton2("Cancel", new DialogInterface.OnClickListener(){

                        @Override
                        public void onClick(DialogInterface dialog, int which) {




                        }});
                    alertDialog.show();