私はAndroidを初めて使用し、次の問題に取り組んでいます。同様の機能の別の2つのボタンをグループ化するボタンを作成する必要があります(一種のサブメニュー)。たとえば、「検索」というボタンがあるとします。このボタンをクリックすると、検索ボタンが消え、2つのボタン(「google」と「bing」など)が画面に表示されます。
したがって、私のアイデアは、2つのボタンを表示して処理するためだけに新しい(一時)レイアウトを作成するのではなく、同じレイアウトで3つのボタンすべてをプログラムで管理することでした。ステートマシンのように。より正確には、次のようになります。
「検索」ボタンを押します。onClick(View)は、メイン画面(mode = mainmenu)にいるかどうかを判断し、検索ボタンの名前を「google」に変更して「bing」という名前の2番目のボタンを作成するか、(mode = submenu)ボタンの関数を呼び出します。検索ボタンへの名前はすでに「google」に変更されています...
戻るボタンを押すと、onBackPressed()はサブメニュー(mode = submenu)にいるかどうかを確認し、「bing」ボタンを非表示にして「google」の名前を「search」に変更します。そうでない場合は、メインメニュー(mode = mainmenu)になります。アクティビティを終了します。
これはまったく意味がありますか?これに加えて、ボタンと(サブ)メニューの数が増え、さらに変更するための保守性が低下する多くのコードが生成されます。
ありがとう!
PS私の英語が(私の母国語ではなく)ひどい場合は申し訳ありません;-)