0

代替テキスト

上の画像は私のゲームの最初のページです。通常、大きな青い「ボタン」の背景画像はそこに表示されません。

次のように、レイアウトファイルでボタンのカスタム背景画像を宣言します。

<Button android:id="@+id/id_button_startgame"
                             android:layout_width="wrap_content"
                             android:layout_height="48dp"
                             android:layout_weight="1"
                             android:textSize="26sp"
                             android:text="@string/start_game"
                             android:textColor="@color/solid_red"
                             android:background="@drawable/button_bg"

                             />

そして、これがドローアブルフォルダのbutton_bg.xmlです

<?xml version="1.0" encoding="utf-8"?> 
<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:state_focused="true" android:state_pressed="false" android:drawable="@drawable/button01_focused" /> 
    <item android:state_focused="true" android:state_pressed="true" android:drawable="@drawable/button01_pressed" /> 
    <item android:state_focused="false" android:state_pressed="true" android:drawable="@drawable/button01_pressed" /> 
    <item android:drawable="@drawable/button01_idle" /> 
</selector>

ご覧のとおり、添付画像をご覧ください。下の3つのボタンは通常の場合です。私は自分のアプリのどこでもそれらを使用しています。ただし、画面中央に表示される場合があります。この大きなボタンは押せません。それは私のゲームの上に浮かんでいるところです。ゲームを開始することはできますが、この大きな青いものがすべてをカバーしているため、明らかにコンテンツを見ることができません。

ゲームを数回起動/終了し続けることで、このバグを再現できます。

もっと情報を入れたいです。しかし、私があなたにどんな情報を与えるべきかわからない。私FrameLayoutはSurfaceViewの上にUIを配置するために使用します。

そして、ほとんどの場合、このバグは発生しません。ゲームを起動/終了して数回繰り返した後、ランダムに発生するようです。

誰かが以前にこのようなものを見たことがありますか?もしそうなら、どうやってそれを修正したのか教えてください。

4

2 に答える 2

1

問題が解決しました。みんなありがとう。

解決策:「レイアウトで透明な背景を使用しないでください」

あなたの答えを組み合わせると、これを解決するのに役立ちました。

わかりました、最初に。バグを 100% 再現する方法を見つけました。

私は別のアクティビティ、半透明の背景を持ち、起動時にすべての上にホバーする「ゲームの一時停止」アクティビティを持っています。

バグを再現するには: 1. 「一時停止」アクティビティを開始します。2. キーボードをスライドして開きます。3. このバグは、「一時停止」アクティビティの背後に表示されます。

@Orsol - はい、これらのボタンを含むレイアウトには透明な背景を使用します

<LinearLayout android:id="@+id/bottom_ui_container"
                android:orientation="vertical"
                android:background="@drawable/transparent_background"
                android:gravity="bottom"
                 android:layout_width="match_parent"
                android:layout_height="match_parent">

                    <LinearLayout android:id="@+id/title_button_container"
                        android:orientation="horizontal"
                         android:background="@drawable/transparent_background"
                        android:gravity="center"
                         android:layout_width="match_parent"
                         android:layout_height="wrap_content"
                         android:visibility="gone">

この2つのレイアウトは、SSのように下に3つのボタンを横に並べるというもの。キーボードをスライドして開いた後、「ボタンの背景」がレイアウトの背景になる理由がまだわかりません...

@mbanzon と Cristian - ヒントをありがとう! =) 次回問題が発生した場合は、hierarchyviewer で遊んでみたいです! ところで、私はカメラを使用してこのショットを撮りました。なぜなら、当時はバグをいつ/どのように再現するかわからないからです。

@Octavian Damian と CaseyB - ご協力ありがとうございます。=) 解決済みなので、レイアウトは投稿しません。

改めまして、皆様ありがとうございました!あなたなしでは、私はこれを修正することはありません!

于 2010-09-29T14:49:37.640 に答える
0

同じ問題がありました。私の場合、画面の背景はに設定されていました

 <color name="transparent">#00000000</color>

に置き換えることで問題が解決しました

<color name="transparent">@android:color/transparent</color>
于 2010-09-30T08:05:33.587 に答える