Отображение целочисленного значения в текстовом представлении в диалоговом окне в Android - PullRequest
0 голосов
/ 18 ноября 2011

Может ли кто-нибудь подсказать, почему целочисленное значение не отображается в текстовом представлении в диалоговом окне в Android.Я использую приведенный ниже код для отображения диалогового окна

 public void onClick(View v) {
    // TODO Auto-generated method stub
    if (v.getId() == R.id.btnAccountInfo) {
        this.showDialog(DIALOG_ACCOUNT);
    } 

}

protected Dialog onCreateDialog(int id) {
    switch (id) {
    case DIALOG_ACCOUNT:
        final Dialog info = new Dialog(this);
        info.setContentView(R.layout.accountinfo);
        info.setTitle("User Account for MobileProtect");
        backInfo = (Button) info.findViewById(R.id.backInfo);
        userNumber1 = (TextView)info.findViewById(R.id.textUserNumber1);
        userNumber2 = (TextView)info.findViewById(R.id.textUserNumber2);
        userEmail = (TextView)info.findViewById(R.id.textUserEmail);
         Log.d("User Number", "Dialog: "+number1+number2);
        userNumber1.setText(number1);
        userNumber1.setText(number2);
        userEmail.setText(email);
        backInfo.setOnClickListener(new OnClickListener(){
            public void onClick(View v) {
                info.dismiss();
            }
        });
        return info;

    }
    return null;
}

Number1 и Number1 не отображаются в диалоговом окне, а электронная почта отображается в диалоговом окне.Я проверил logcat, я получаю значения для number1 и number2, и это тоже в целочисленном формате.Есть предложения?

Ответы [ 2 ]

1 голос
/ 18 ноября 2011

Передача int в метод setText вызовет перегрузку, которая интерпретирует аргумент как идентификатор ресурса . См. документацию для получения дополнительной информации. Используйте это вместо

userNumber1.setText(Integer.toString(number1));

Также рассмотрите возможность улучшения имен переменных и форматирования кода.

0 голосов
/ 18 ноября 2011

Я подозреваю, что number1 & number2 не являются String значениями.

Попробуйте следующее:

    userNumber1.setText( Integer.toString( number1 ) );
    userNumber2.setText( Integer.toString( number2 ) );

(при условии, что number1 & number2 являются значениями типа int)

...