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());
}
}