首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計疑難解答

Android 自定義標題欄佈局 include 導致佔滿螢幕解決

     編輯:程式設計疑難解答

在 activity_main.xml 中 <include layout="@layout/title"/> 後,標題欄佔滿整個螢幕。原因是 title.xml 根元素高度設為 match_parent,應改為 wrap_content。

錯誤 title.xml

<LinearLayout xmlns:android="..."
    android:layout_width="match_parent"
    android:layout_height="match_parent">  <-- 錯誤
    ...
</LinearLayout>

正確 title.xml

<LinearLayout xmlns:android="..."
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@drawable/title_bg"
    android:orientation="horizontal">
    <Button android:id="@+id/title_back" ... />
    <TextView android:id="@+id/title_text" ... />
    <Button android:id="@+id/title_edit" ... />
</LinearLayout>

activity_main.xml 引用

<LinearLayout ... android:orientation="vertical">
    <include layout="@layout/title" />
    <!-- 其他內容 -->
</LinearLayout>

補充

  • include 會將被引入佈局的根元素屬性合併到父佈局同位置,故根元素尺寸決定顯示大小。
  • 若需在程式碼動態隱藏/顯示標題,可對 findViewById(R.id.title_root) 操作 visibility。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved