ANDROID: изменение TextView одним нажатием кнопки - PullRequest
0 голосов
/ 10 августа 2011

Прежде всего, я новичок в программировании на Android, поэтому мой уровень кодирования не слишком велик: p У меня есть класс колоды карт, в котором я хочу вернуть значение карты, отображаемой в текстовом представлении.

cardValue = "The " + numString + " of " + suitString;
    return cardValue;

Это конец метода drawCard в моем классе колод.В моем классе virtualDeck я создал экземпляр этого класса

final textdeck deck = new textdeck();
        String value = deck.drawCard(); 

. Я пытаюсь создать кнопку в классе virtualDeck, который после нажатия запустит метод drawCard из textDeck.класс и вернуть результат в textView.При каждом нажатии кнопки, изменение textView для печати нового значения.

Я могу понять, как это сделать.Буду признателен за любую оказанную помощь.Приветствия.

Ответы [ 2 ]

0 голосов
/ 10 августа 2011

Я не совсем понимаю, что вы пытаетесь сделать, но вот как вы меняете вид с помощью кнопки:

    Button nextButton =(Button)findViewById(R.id.next);
    nextButton.setOnClickListener(this);

Где следующая кнопка, созданная внутри текущего макета. Тогда в слушателе onclick:

    Intent intent = new Intent(this,SecondIntent.class);                                
    startActivity(intent);
    finish();

и SecondIntent - это имя второго класса, который вы вызываете. Этот класс может иметь свое собственное представление, потому что он может вызывать setContentView ().

Единственное, что нужно сделать, это открыть AndroidManifest.xml и добавить следующее в тег

<activity android:name=".SecondIntent" android:label="@string/app_name"> </activity>

Добавление этого в манифест позволит андроиду узнать, что другая деятельность существует.

Теперь, если вы хотите открыть второе представление и иметь возможность закрыть второе представление, чтобы вернуться к первому, добавьте finish() ко второму действию, а не к первому.

Удачи! - Товарищ Android Noob

0 голосов
/ 10 августа 2011

Я надеюсь, что этот пример того, как настроить TextView, поможет:

В вашем main.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
    <TextView  
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content" 
        android:id="@+id/card"/>
</LinearLayout>

В вашем источнике (TextViewExample.java)

import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;


public class TextViewExample extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        //Do all your deck setup here
        String value = "8 of Spades";

        //New textView
        TextView cardDisplay = (TextView)findViewById(R.id.card);

        //Update Text
        cardDisplay.setText(value);

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