java - 如何在每个布局页面中都有一个标题?

标签 java android user-interface

我想要这段代码:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" >

<TextView android:id="@+id/logo" style="@style/logo"
    android:layout_alignParentTop="true"
    android:text="@string/logo" tools:context=".MainActivity" />

从每个布局开始。我该怎么做才能不需要将它添加到每个布局页面?例如在 PHP 中我会使用 <?=include("header.php");?> (只是一个例子,实际上这是不好的做法,在这里无关紧要)。谢谢。

最佳答案

将标题保存在 XML 文件中,然后将此 XML 作为子布局包含在其他布局中:

<include  layout="@layout/headerlayout" android:id="@+id/headerLayoutid"  ...  />

headerlayout.xml 是您上面的布局的名称,应该在 res/layout 中定义并且您希望它显示为标题在所有布局中(layout="@layout/headerlayout"),headerLayoutid 也是您的 headerlayout(在其父级中)的 id,您可以在您的父布局或代码中引用它。
您可以覆盖所有布局参数。这意味着任何 android:layout_* 属性都可以与标签一起使用。这是一个例子:

<include android:layout_width="fill_parent" layout="@layout/image_holder" />  

您可以在 this page 中查看关于 include 的更多详细信息.
编辑:
如果您在查找包含的布局中的 View 时遇到问题,请查看此问题,希望这些对您有所帮助:
findViewById not working for an include?
Finding an view by id?

关于java - 如何在每个布局页面中都有一个标题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11590283/

相关文章:

java - 在java中查找n个数组之间的公共(public)元素之和

java - java如何处理键盘上 "enter"键的输入

android - Facebook asmack xmpp 客户端返回名册的随机数

javascript - 如何在应用程序启动时合并演练屏幕

ios - 自定义标签栏 iOS

java - 显示图像 batik JSVGCanvas

java - 将子包移动到新包后@Autowire 不起作用

android - 每 3 秒在屏幕上创建和显示游戏对象

android - 在选择时更改 Android ListView 文本的文本颜色

user-interface - 单击菜单时剑道 UI 菜单跳转