Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/221.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 视图组-将XML内容添加到视图组中的不同容器中_Android_Android Layout_Android Linearlayout_Android Custom View_Android Viewgroup - Fatal编程技术网

Android 视图组-将XML内容添加到视图组中的不同容器中

Android 视图组-将XML内容添加到视图组中的不同容器中,android,android-layout,android-linearlayout,android-custom-view,android-viewgroup,Android,Android Layout,Android Linearlayout,Android Custom View,Android Viewgroup,是否可以从包含一些静态对象和另一个LinearLayout的XML中膨胀LinearLayout,稍后在LinearLayout中使用XML代码时,其内容将添加到LinearLayout中 删除部分代码后的说明: <LinearLayout id="main"> <LinearLayout id="top"> <TextView text="This is always here" /> <ImageView sr

是否可以从包含一些静态对象和另一个LinearLayout的XML中膨胀LinearLayout,稍后在LinearLayout中使用XML代码时,其内容将添加到LinearLayout中

删除部分代码后的说明:

<LinearLayout id="main">
    <LinearLayout id="top">
        <TextView text="This is always here" />
        <ImageView src="@drawable/image_alwayshere" />
    </LinearLayout>
    <LinearLayout id="bottom">
    </LinearLayout>
</LinearLayout>
然后,我的观点CustomLinearLayout或我们称之为的任何东西会夸大这一点 在其他布局中使用视图时:

<com.my.views.CustomLinearLayout>

    <ImageButton id="button1" src="@drawable/button1" />

</com.my.views.CustomLinearLayout>
在这种情况下,不应将ImageButton添加到底部,而应将其添加到底部。因此,无论我在顶部有什么,都会保持静态,我想要更改的内容都会添加到底部线性布局中

这有可能吗?如果有,怎么做

不确定这是好的还是坏的做法,是否有效。但是,如果我有一个固定的布局顶部容器、中间容器和底部容器,并且我有10个不同的活动,唯一一个更改内容的是中间的活动,那么我可以很容易地在一个位置(而不是10个位置)对顶部和底部容器进行一次更改,并在活动中添加我想要显示的任何视图

也许我需要为此创建一个全新的视图组?但目前正在研究LinearLayout,因为它的功能正是我所需要的


如果没有,那么我要寻找的是LinearLayout读取XML内容的位置和时间,然后重写该内容,将其添加到我的内部LinearLayout中。

这是可能的,您可以使用include标记将另一个xml布局添加到底部布局中,并使其可见性保持不变,并在需要时将其更改为可见


或者,您可以动态地这样做,并随时膨胀xml,然后使用方法将其添加到底部。

我甚至不确定在哪里可以找到它,我只是想知道它是否有效。LinearLayout什么时候获得XML中的代码,我想从那里很容易找到bottomLayout.addViewView,但是从我的构造函数中,我调用了一个方法,首先扩展这个视图。然后,如果在XML代码中添加了某些内容,它也会被添加到视图中,但此时它会变得很奇怪。您所指的可能是从ViewGroup重新创建视图?我将失去我更喜欢的线性布局的所有功能。如果要将视图添加到任何视图组中,您所要做的就是查看组视图。FindViewByDyorViewGroupId然后将视图添加到结果视图组我很困惑。为简单起见:Custom.xml是一个线性布局,然后是它的顶部和底部。然后,在构造Custom.xml布局后,创建CustomLL extends LinearLayout。然后,在某些视图上使用,并在其中添加一个ImageButton。现在尝试,覆盖addView方法,检查之前的子项id-如果它是默认id之一,则按常规添加,如果不是,则添加到底部的LinearLayout-将不显示任何内容。