Android 动画中具有两个视图的自定义RelativeLayout

Android 动画中具有两个视图的自定义RelativeLayout,android,android-layout,animation,Android,Android Layout,Animation,我找不到关于这种情况的任何地方。 我在相对论中有两种观点 <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@colo

我找不到关于这种情况的任何地方。 我在相对论中有两种观点

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/transparent">
<View
    android:id="@+id/view_mask1"
    android:layout_width="50dp"
    android:layout_height="50dp"
    android:background="@drawable/tutrial_icon_bg_circle"
    android:layout_centerInParent="true"
    android:visibility="visible"/>
<View
    android:id="@+id/view_mask"
    android:layout_width="30dp"
    android:layout_height="30dp"
    android:background="@drawable/tutorial_icon_bg"
    android:layout_centerInParent="true"
    android:visibility="visible"/>
 </RelativeLayout>

因此,我想我必须创建一个customView,但如何创建呢?

没有人回答,但我自己找到了一个解决方案。 我创建了一个扩展视图的类

public class TutorialIcon extends View {

View maskView, maskView1, v;
public TutorialIcon(Context context) {
    super(context);
    v = LayoutInflater.from(context).inflate(R.layout.tutorial_icon, null);
    this.maskView = v.findViewById(R.id.view_mask);
    this.maskView1 = v.findViewById(R.id.view_mask1);
}

public View view(){
    createRecursiveAnimations();
    return v;
}
private void createRecursiveAnimations1() {
//animation1
}
private void createRecursiveAnimations2() {
//animation2
}
}
教程\u icon.xml

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/transparent">
<View
    android:id="@+id/view_mask1"
    android:layout_width="50dp"
    android:layout_height="50dp"
    android:background="@drawable/tutrial_icon_bg_circle"
    android:layout_centerInParent="true"
    android:visibility="visible" />
<View
    android:id="@+id/view_mask"
    android:layout_width="30dp"
    android:layout_height="30dp"
    android:background="@drawable/tutorial_icon_bg"
    android:layout_centerInParent="true"
    android:visibility="visible"/>
</RelativeLayout>
希望这对别人有帮助

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/transparent">
<View
    android:id="@+id/view_mask1"
    android:layout_width="50dp"
    android:layout_height="50dp"
    android:background="@drawable/tutrial_icon_bg_circle"
    android:layout_centerInParent="true"
    android:visibility="visible" />
<View
    android:id="@+id/view_mask"
    android:layout_width="30dp"
    android:layout_height="30dp"
    android:background="@drawable/tutorial_icon_bg"
    android:layout_centerInParent="true"
    android:visibility="visible"/>
</RelativeLayout>
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
convertView = null;
if (convertView == null) {
        convertView = inflater.inflate(R.layout.cell_catalog_tags, null);
        Relativelayout layout = (RelativeLayout) convertView.findViewById(R.id.layout);
            TutorialIcon t = new TutorialIcon(context);
            layout.addView(t.view());
    }
}