如何在同一活动中更改屏幕

时间:2014-02-18 07:37:46

标签: android android-layout android-activity

我是Android新手。我一直在尝试制作游戏。我有很多问题,当用户回复这些问题时,屏幕会发生变化并显示其他问题。如何在不改变活动的情况下做到这一点?感谢

按下按钮时,我想在每个问题中仅更改此部分视图。

 <TableRow
    android:id="@+id/typeRow1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_marginTop="20dp"
    android:gravity="center" >

    <TextView
        android:id="@+id/flagPart1"
        android:layout_width="76dp"
        android:layout_height="120dp"
        android:background="@drawable/back"
        android:gravity="center"
        android:textAppearance="?android:attr/textAppearanceMedium" />

    <TextView
        android:id="@+id/flagPart2"
        android:layout_width="76dp"
        android:layout_height="120dp"
        android:layout_marginLeft="-1dp"
        android:background="@drawable/back"
        android:gravity="center"
        android:textAppearance="?android:attr/textAppearanceMedium" />

    <TextView
        android:id="@+id/flagPart3"
        android:layout_width="76dp"
        android:layout_height="120dp"
        android:layout_marginLeft="-1dp"
        android:background="@drawable/back"
        android:gravity="center"
        android:textAppearance="?android:attr/textAppearanceMedium" />
</TableRow>

4 个答案:

答案 0 :(得分:1)

通过调用TextView textView = (TextView) findViewById(R.id.yourtextview)方法中的onCreate()来获取TextView的句柄。

然后,您可以使用textView.setText("Your Text here")更改值。

如果您使textView成为一个类属性,您也可以从其他方法更改其值。请注意,您仍然必须使用findViewById中的onCreate()方法初始化变量。

答案 1 :(得分:0)

  1. TextView
  2. 中保留对要填充数据的Activity的引用
  3. 使用不同的文字填写这些TextView

答案 2 :(得分:0)

您可以使用可见性..您可以隐藏或显示您的视图,如

  1. textview.setVisibility(View.VISIBLE);

  2. textview.setVisibility(View.INVISIBLE);

答案 3 :(得分:0)

您只需更新TextViews中的文字:

TextView textView = (TextView) findViewById(R.id.textView);
textView.setText("text");

更改活动内部UI的更复杂解决方案是Fragments