Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/195.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Android:ShowDialog与变量_Java_Android_Variables_Showdialog - Fatal编程技术网

Java Android:ShowDialog与变量

Java Android:ShowDialog与变量,java,android,variables,showdialog,Java,Android,Variables,Showdialog,嗨,我正在进入一个ShowDialog,我想让它显示一条包含两个局部变量的消息。出于这个原因,它说有一个错误,所以如果有一种方法显示这些变量,我将非常感谢您的帮助。这是我的代码,错误所在的行是: .setMessage("The NIF is" +user +DNIWord "-") protected Dialog onCreateDialog (int id){ switch (id) { case DIALOG_ERROR_CANDIDATO:

嗨,我正在进入一个ShowDialog,我想让它显示一条包含两个局部变量的消息。出于这个原因,它说有一个错误,所以如果有一种方法显示这些变量,我将非常感谢您的帮助。这是我的代码,错误所在的行是:

  .setMessage("The NIF is" +user +DNIWord  "-")
protected Dialog onCreateDialog (int id){


     switch (id) {
     case DIALOG_ERROR_CANDIDATO:
           return new AlertDialog.Builder(this)
               .setIcon(R.drawable.ic_error)
               .setTitle(R.string.error)
               .setMessage("The NIF is" +user +DNIWord  "-")
               .setPositiveButton(R.string.alert_dialog_ok, new DialogInterface.OnClickListener() {
                   public void onClick(DialogInterface dialog, int whichButton) {
                    }
               })

               .create();
     }

    return null;


}
代码的其余部分如下所示:

  .setMessage("The NIF is" +user +DNIWord  "-")
protected Dialog onCreateDialog (int id){


     switch (id) {
     case DIALOG_ERROR_CANDIDATO:
           return new AlertDialog.Builder(this)
               .setIcon(R.drawable.ic_error)
               .setTitle(R.string.error)
               .setMessage("The NIF is" +user +DNIWord  "-")
               .setPositiveButton(R.string.alert_dialog_ok, new DialogInterface.OnClickListener() {
                   public void onClick(DialogInterface dialog, int whichButton) {
                    }
               })

               .create();
     }

    return null;


}
这两个变量从这里获得:

int user = Integer.parseInt(dniText.getText().toString());

public static String DNIWord(int user) {
  return String.valueOf(user) + NIF_STRING_ASOCIATION.charAt(user % 23);
}
多谢各位

编辑:


user
是一个类变量,
DNIWord
只是一个方法。修改调用,使其如下所示:

.setMessage("The NIF is" +user +DNIWord (user)+  "-")
DNIWord虽然与一个隐藏的
用户
变量一起工作,所以

("The NIF is" +user +DNIWord (user)+  "-")
可以缩短为

("The NIF is" + DNIWord (user)+  "-")
但是,由于
user
似乎是类范围的,并且您尝试获取
dniText
的值,该值似乎是
EditText/TextView
,因此在实际运行应用程序时,您很可能也会得到
NullPointerException
。将用户分配移动到类似内部的位置
onCreateDialog()

Edit:
用户
不是类作用域,而是
onCreate()的局部变量
局部变量,顾名思义,它们是封闭方法的局部变量

将用户移出onCreate(),然后取出onCreate中的
int
用户,将其写为
user

int user = 0; //class instance variable
public void onCreate(Bundle icicle)
{

  //...
  try{
    user = Integer.parseInt(dniText.getText().toString()); //no "int", just user
  }
  catch (NumberFormatException e)
  {
  }
}

然后在
onCreateDialog()
方法中,您应该能够访问
user
user
是一个类变量,
DNIWord
只是一个方法。修改调用,使其如下所示:

.setMessage("The NIF is" +user +DNIWord (user)+  "-")
int user = 0; //class instance variable
public void onCreate(Bundle icicle)
{

  //...
  try{
    user = Integer.parseInt(dniText.getText().toString()); //no "int", just user
  }
  catch (NumberFormatException e)
  {
  }
}
DNIWord虽然与一个隐藏的
用户
变量一起工作,所以

("The NIF is" +user +DNIWord (user)+  "-")
可以缩短为

("The NIF is" + DNIWord (user)+  "-")
但是,由于
user
似乎是类范围的,并且您尝试获取
dniText
的值,该值似乎是
EditText/TextView
,因此在实际运行应用程序时,您很可能也会得到
NullPointerException
。将用户分配移动到类似内部的位置
onCreateDialog()

Edit:
用户
不是类作用域,而是
onCreate()的局部变量
局部变量,顾名思义,它们是封闭方法的局部变量

将用户移出onCreate(),然后取出onCreate中的
int
用户,将其写为
user

int user = 0; //class instance variable
public void onCreate(Bundle icicle)
{

  //...
  try{
    user = Integer.parseInt(dniText.getText().toString()); //no "int", just user
  }
  catch (NumberFormatException e)
  {
  }
}

然后在
onCreateDialog()
方法中,您应该能够访问
user

谢谢A--C,但错误仍然存在。我已经编辑了全班的信息。@Katherine99在这种情况下,请准确地告诉我们错误是怎么说的。编辑你的范围是关闭的。用户是
onCreate()
的本地用户,谢谢您A--C,但错误与此相同。我已经编辑了全班的信息。@Katherine99在这种情况下,请准确地告诉我们错误是怎么说的。编辑你的范围是关闭的。用户是
onCreate()的本地用户
int user = 0; //class instance variable
public void onCreate(Bundle icicle)
{

  //...
  try{
    user = Integer.parseInt(dniText.getText().toString()); //no "int", just user
  }
  catch (NumberFormatException e)
  {
  }
}