我在android FrameLayout中遇到了一个非常奇怪的问题。
我正在尝试一个非常简单的游戏,它有一个SurfaceView,当游戏结束时,我想在顶部弹出另一个视图,可能会显示一些文字。这与android示例lunarlander代码非常相似。但是我无法让它发挥作用。这是一个奇怪的问题:
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/game_frame"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<com.tmh.FunMatch.MainGamePanel
android:id="@+id/game_panel"
android:layout_width="fill_parent"
android:layout_height="fill_parent"/>
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<com.tmh.FunMatch.MyText
android:id="@+id/text"
android:text="test"
android:visibility="invisible"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:gravity="center_horizontal"
android:textColor="#88ffffff"
android:textSize="24sp"/>
</RelativeLayout>
对于上面的FrameLayout,我想在游戏结束时显示第二个TextView。但是在我调用TextView.setVisibility(VISIBLE)后它不会显示。
我做了很多实验,如果我最初将TextView设置为VISIBLE,那么在某些时候在代码中将其设置为INVISIBLE。 (我的理解是TextView必须最初在屏幕上显示,然后我将其变为INVISIBLE)。如果我这样做,当游戏结束时,将正确显示TextView。
我非常怀疑这是一个安卓漏洞。我更改了android LunarLander代码,我不知道LunarLander为什么会工作并在屏幕上显示Text。
如果有人遇到同样的问题,请告诉我我的代码有什么问题或是否有隐藏的错误?
由于