FrameLayout 内のアニメーション化された GLSurfaceView の上にすべて配置された、いくつかの異なる LinearLayouts のいくつかのボタンで構成されるメニューを設計しました。ユーザーがインターフェイスのボタンをクリックすると、次のレイアウトを作成する前に、現在のレイアウトの可視GONE
性をただし、それは FrameLayout 内には含まれていません)VISIBLE
GONE
ほとんどの携帯電話では、メニューは魔法のように機能しますが、Xperia Ray で簡単なテストを行ったところ、ボタンをクリックしないため、どこにも行けないことがわかりました。ほとんどの onClick リスナーにLog.d
タグを設定しましたが、この場合、それらは Logcat に表示されないため、リスナーがまったく起動していないように見えます。また、GLSurfaceView が独自の TouchEventListener から何も返していないことにも気付きました。トップメニューで GLSurfaceView をタップしてトリガーされる機能が無効になっている場合でも、通常は Logcat にメッセージが表示されます。
FrameLayoutの使用方法に関係があるのではないかと思いました。ドキュメントには、子を 1 つだけ持つ必要があると書かれていますが、Android 開発者について読んだ別の記事では、FrameLayout 内の ImageViews にテキストを表示することで、画像にキャプションを付ける方法を示しました。
最後に、エミュレーターでテストしたところ、Android v2.3 と Android v4 の両方がレイと同じ動作を示すことがわかりました。現在、アプリを完全に実行するAndroid v2.2を除いて、これらは私が確信している唯一のものです。エミュレーターでのテスト結果を信用するのはためらわれます。
続行するエラーメッセージがないので、私は個人的に困惑していますが、誰か解決策を提案できますか?