1. ホーム
  2. android

[解決済み] 現在のアクティビティからルートビューを取得する

2022-02-14 10:36:09

質問

でルートビューを取得する方法は知っています。 View.getRootView() . また、ボタンからビューを取得することもできます。 onClick イベントで、引数は 表示 . しかし、どうすれば ビュー の中に 活動 ?

解決方法は?

アクティビティのルートビューが必要な場合(コンテンツをそこに追加できるように)、次のようにします。

findViewById(android.R.id.content).getRootView()

また、一部の端末で

getWindow().getDecorView().findViewById(android.R.id.content)

の代わりに

なお、Boogerさんの報告にあるように、一部の端末ではナビゲーションバー(戻るボタンなどがある)の後ろに表示される可能性があります(ただし、ほとんどの端末では表示されないようです)。

を使用してアクティビティに追加したビューを取得する必要がある場合。 setContentView() メソッドを使用すると、pottedmeat さんが書いているように

final ViewGroup viewGroup = (ViewGroup) ((ViewGroup) this
            .findViewById(android.R.id.content)).getChildAt(0);

しかし、xmlレイアウトでこのビューにidを設定し、代わりにこのidを使用する方が良いでしょう。