Android – 下部ナビゲーションの違和感!?

ふと、下部ナビゲーションのテンプレートを見直していたら、なんとなく、違和感を感じたw

■違和感です!

・fragment_home.xml

画面の真ん中辺りに、TextViewがいますよね?

レイアウト
レイアウト

・実行してみる

広告

実行すると、なんとなく、画面中央よりも下に「This is home Fragment」がいますよね???

実行結果
実行結果

■試してみる

・TextViewを変更してみる

TextViewに以下の変更を加えてみた

  • layout_heightを0dp
  • layout_marginTopを0dp
  • backgroundに色を塗る
TextViewを変更
TextViewを変更

・再実行

「fragment_home.xml」は全面色が塗られているのに、実行したら上の方に隙間ができていた!?

上に隙間がある
上に隙間がある

■アクティビティのレイアウト

・activity_main.xml

フラグメントは全面を使っている!ということは、問題は「activity_main.xml」にあると簡単に推測できるw

activity_main.xml
activity_main.xml

既に隙間がある!w

って、これは、「Home」って書いてある下図の赤枠のとこじゃないの!?

隙間の正体は?
隙間の正体は?

と思ったんだけど、「activity_main.xml」の画面レイアウトでは、この部分が描画されていない!(下部ナビゲーションは描画されているのに・・)

広告

・コンポーネント・ツリー

確かに、nav_host_fragment<fragment>はhome同様に色が塗られているが、上が開いてて、下が画面の最下部までになっている!?

コンポーネント・ツリー
コンポーネント・ツリー

すっごい違和感w

containerを見ると、全画面になっているんだけど・・

属性のところに、「paddingTop」に「?attr/actionBarSize」という何やら妙なものが!?

paddingTop
paddingTop

・actionBarSizeとは・・

間違いなく、これの高さだよね・・?

ActionBar
ActionBar

これの表示エリア分を開けておきました!ってことなんだろうけど・・

要らないみたいですwww

■修正してみる

・paddingTopを消す

属性から「paddingTop」を削除します

「activity_main.xml」の画面レイアウトの全体がnav_host_fragment(中身はfragment_home.xml)で最上部まで使われましたね!

paddingTopを消す
paddingTopを消す

■実行してみる

・修正完了

思った通りだったw

修正完了
修正完了

・修正前と比べてみる

念のため、修正前と修正後を同じレイアウトで比べてみる!

修正前
修正前
修正後
修正後

・・微妙だけど、治ってるよね!w

■最後に

まともに動かないサンプルとか、公式に配らないで欲しいですよねwww

ま、よい子は、彼らを信じない方が良いことに、気が付いているはずです!

公式のサンプルなんだから、自己満足で終わらないで、しっかりデバッグして、正しいものを配布して欲しいと思うわけで・・w

ではでは

広告

やもす ʕ•͡-•ʔ

のんびり!のほほん!がモットーです!w 蕎麦食いたい ライブ行きたい 暑いの嫌い

シェアする