如何获得LinearLayout的子视图为一个视图组?

问题描述:

我有一个LinearLayout与9静态儿童。我想要将2个孩子(以childAt(0)childAt(1)的顺序)作为ViewGroup以应用动画。 我不想创建一个新的LinearLayout,因为我需要首先从其父母中删除孩子,并且它实际上会移除孩子,而我不这样做,因为我只是想让这些孩子一起制作动画。如何获得LinearLayout的子视图为一个视图组?

例如:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:paddingLeft="16dp" 
    android:paddingRight="16dp" 
    android:orientation="vertical" > 
    <EditText 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:hint="@string/to" /> 
    <EditText 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:hint="@string/subject" /> 
    <EditText 
     android:layout_width="match_parent" 
     android:layout_height="0dp" 
     android:layout_weight="1" 
     android:gravity="top" 
     android:hint="@string/message" /> 
    <Button 
     android:layout_width="100dp" 
     android:layout_height="wrap_content" 
     android:layout_gravity="right" 
     android:text="@string/send" /> 
</LinearLayout> 

我想孩子2和3 ViewGroup

+0

因为LinearLayout已经是一个viewgroup,有没有办法让孩子2和3作为viewgroup? – cyberlyn06

你的意思是ViewGroup.addView(View)

viewgroup.addView(lview.childAt(0)) 
viewgroup.addView(lview.childAt(1)) 
+0

这不起作用,因为您需要创建一个视图组。我不确定我们是否可以在onLayout()中合并两个孩子。 'ViewGroup viewGroup = new ViewGroup(){ @Override protected void onLayout(boolean b,int i,int i1,int i2,int i3){?} { //? } }' – cyberlyn06