Не могу просмотреть мой TextView внутри кнопок onClickListener - PullRequest
0 голосов
/ 06 марта 2012

Доброе утро всем,

Я хотел выяснить, почему мои текстовые представления не будут отображаться в моем приложении. Я объявил их в методе кнопки onClick, так что, как только кнопки были нажаты, они всплывают. В основном это кнопка типа «ввод», где, если пользователь вводит правильный ответ, в текстовом представлении отображается правильно, в противном случае - неправильно.

public void Easy12(){
    Random rand = new Random();
    int a = (int) rand.nextInt(100)+1;
    int b = (int) rand.nextInt(100)+1;
    final TextView tv = (TextView) findViewById(R.id.question_label);
    String aString = Integer.toString(a);
    String bString = Integer.toString(b);
    String display = aString + " + " + bString + " =";
    tv.setText(display);
    final int c = a + b;

    final Button buttonhash = (Button) findViewById(R.id.keypad_hash);
    buttonhash.setOnClickListener(new OnClickListener(){
        public void onClick(View v) {
            final EditText edittext = (EditText) findViewById(R.id.USERentry);
            if(edittext.getText().equals(c)){
                final TextView answerLabel = (TextView) findViewById(R.id.rightwrong_label);
                answerLabel.setText(R.string.answer_correct);
                answerLabel.setTextColor(R.color.correct_color);
            }
            else
            {
                final TextView answerLabel = (TextView) findViewById(R.id.rightwrong_label);
                answerLabel.setText(R.string.answer_wrong);
                answerLabel.setTextColor(R.color.wrong_color);
            }
        }
    });

}

Мне пришлось создавать отдельные текстовые представления, которые вызывают один и тот же текстовый просмотр, потому что он не распознает их из-за скобок. Этот метод является частью моего класса Game, который просто отображает выражение и проверяет правильность ответа пользователя, нажимая кнопку a на экране. Если кто-нибудь знает, что случилось, пожалуйста, поделитесь. Спасибо

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
          android:layout_width="fill_parent" 
          android:layout_height="fill_parent" 
          android:orientation="vertical" >
<TextView android:id="@+id/question_label"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"/>
<TextView android:id="@+id/rightwrong_label"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"/>
<EditText
android:id="@+id/USERentry"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@android:drawable/editbox_background"
android:textColor="@color/user_txt_color"/>
<TableLayout....

Ответы [ 2 ]

1 голос
/ 06 марта 2012

ИЛИ, если хотите, используйте метод "ТОСТ",

Toast.makeText(LoginpageActivity.this, "Write your text here to display", Toast.LENGTH_LONG).show();

Здесь "LoginpageActivity" - это имя текущего класса

1 голос
/ 06 марта 2012

Это потому, что ваш View не обновляется, на котором вы пишете свои textViews.Попробуйте обновить представление, перерисовав его, или передайте какое-либо намерение посмотреть, работает ли записывающая часть или нет

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...