添加 xml 设计作为新视图,然后我可以在需要时添加到其他布局

Posted

技术标签:

【中文标题】添加 xml 设计作为新视图,然后我可以在需要时添加到其他布局【英文标题】:adding an xml design as a new view that I can then add to other layouts when needed 【发布时间】:2013-02-26 05:08:16 【问题描述】:

我制作了以下 xml 文档作为自定义设计的按钮:

<?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/CBN_LinearLayout"
        style="@android:style/Widget.Button"
        android:layout_
        android:layout_
        android:orientation="vertical" >

<FrameLayout

    android:layout_
    android:layout_
    android:layout_gravity="center_vertical"
    android:fadingEdge="horizontal" >

    <ImageView
        android:id="@+id/imageView1"
        android:layout_
        android:layout_
        android:layout_gravity="center_horizontal"
        android:layout_marginLeft="4dp"
        android:layout_marginTop="1dp"
        android:contentDescription="@string/redcirclenotify"
        android:src="@drawable/rednotify"
        android:visibility="visible" />

    <LinearLayout
        android:layout_
        android:layout_
        android:orientation="vertical" >

        <LinearLayout
            android:layout_
            android:layout_ >

            <TextView
                android:id="@+id/CBV_texview1"
                android:layout_
                android:layout_
                android:layout_gravity="right"
                android:layout_marginRight="10dp"
                android:layout_weight="1"
                android:gravity="right"
                android:text="@string/checkorder" />

            <TextView
                android:id="@+id/CBV_textview2"
                android:layout_
                android:layout_
                android:layout_weight="1"
                android:gravity="left"
                android:text="@string/zero"
                android:visibility="visible" />

        </LinearLayout>

        <LinearLayout
            android:layout_
            android:layout_ >

            <TextView
                android:id="@+id/CBV_textview3"
                android:layout_
                android:layout_
                android:layout_weight="1"
                android:fadingEdge="horizontal"
                android:gravity="center_horizontal"
                android:text="@string/blankstring" />

            <TextView
                android:id="@+id/CBV_textview4"
                android:layout_
                android:layout_
                android:layout_weight="1"
                android:gravity="center_horizontal"
                android:text="@string/blankstring" />
        </LinearLayout>

    </LinearLayout>

</FrameLayout>

 </LinearLayout>

我想知道是否可以在 ADK 的自定义部分中使其成为可访问的视图,而无需创建自定义类。如果我必须创建一个自定义类扩展视图,是否有一种方法可以参考此布局的细节,因为我宁愿不在类中对其进行编程。

感谢您的任何见解!

【问题讨论】:

【参考方案1】:

您始终可以在需要的地方引用此布局。只需将此布局包含在您需要的其他布局 xml 中,如下所示:

 <include
    android:layout_
    android:layout_x="0px"
    android:layout_y="0px"
    layout="@layout/ur custom layout" />

可以参考this

【讨论】:

【参考方案2】:

您可以在 java 文件中使用通货膨胀。

final LayoutInflater lyInflater = (LayoutInflater) mContext
                .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
LinearLayout lLayout = (LinearLayout) lyInflater.inflate(
                R.layout.my_xml, null);

或者你可以include它在xml文件中。

【讨论】:

以上是关于添加 xml 设计作为新视图,然后我可以在需要时添加到其他布局的主要内容,如果未能解决你的问题,请参考以下文章

如何添加静态项目,例如“添加新联系人”,始终作为回收站视图的第一项? [关闭]

我可以在不使用 xml 文件的情况下在列表视图中添加视图吗

我需要添加缺少的节点,然后排序包括添加的新节点

SharePoint Server 2019 中的日历列表视图

如何添加在图形页面定制标注视图

Odoo - 添加新字段时出错:ValidateError 验证字段拱时发生错误:视图架构的 XML 无效