gpt4 book ai didi

android - 如何在 Android 上扩展 include 标签

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:54:06 25 4
gpt4 key购买 nike

我最终让许多 xml 文件在页眉和页脚上共享相同的代码。有什么好的方法可以创建某种模板并将其传递给中间包含的资源吗?

换句话说,如何以这样一种方式扩展 Include 标签,而不是简单地包含一个 View ,而是包含一个包含给定资源的模板?

我的乱码:

<?xml version="1.0" encoding="utf-8"?>
<include layout="@layout/settings_section" />

设置部分.xml:

<?xml version="1.0" encoding="utf-8"?>
<!--Header Begin-->
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:padding="10dp"
>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@layout/my_shape"
android:orientation="vertical"
><include layout="@layout/header" />
<!--End header-->


<TextView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="10dp"
android:text="Blah blah blah"
/>


<!--Footer Begin -->
</LinearLayout>
</LinearLayout>
<!-- Footer End -->

我想要什么:

<include layout="@layout/header" />
<com.example.Include layout="@layout/settings_section" inside="@layout/default_template" />

编辑:我正在寻找代码示例。

最佳答案

这并不能准确回答您的问题,但我已经在类似情况下使用了样式。

res/layout/layout.xml:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
style="@style/header1" >
<LinearLayout
style="@style/header2" >
<include layout="@layout/header" />
...

res/values/styles.xml

...
<style name="header1">
<item name="android:layout_width">fill_parent</item>
<item name="android:layout_height">fill_parent</item>
<item name="android:orientation">vertical</item>
<item name="android:padding">10dp</item>
</style>
<style name="header2">
<item name="android:layout_width">fill_parent</item>
<item name="android:layout_height">fill_parent</item>
<item name="android:background">@layout/my_shape</item>
<item name="android:orientation">vertical</item>
<style>
...

无论如何,这种方法简化了您必须复制/粘贴到多个文件中的部分,并使修改它们变得相当简单和灵活。如果需要,您可以在 layout.xml 中进行修改 - 您在样式中提供的值将被覆盖 - 并且修改样式会影响使用它们的所有布局。

关于android - 如何在 Android 上扩展 include 标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5289788/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com