Android - анимировать RelativeLayout сразу после его добавления через Java - PullRequest
0 голосов
/ 02 апреля 2020

Я хочу добавить вид в основной макет и анимировать его сразу после добавления. Но вместо этого он вращается вокруг себя, вращается вокруг чего-то другого (похоже, он вращается вокруг x = 0 и y = 0).

Добавление кода и анимация собственного RelativeLayout:

CustomRL cRL = new CustomRL(mContext);
cRL.setLayoutParams(new RelativeLayout.LayoutParams(
                        ViewGroup.LayoutParams.WRAP_CONTENT,
                        ViewGroup.LayoutParams.WRAP_CONTENT));

RelativeLayout main = findViewById(R.id.main);
main.addView(cRL);

RotateAnimation animation = new RotateAnimation(0,360,
        Animation.RELATIVE_TO_SELF, 0.5f,
        Animation.RELATIVE_TO_SELF, 0.5f);
animation.setDuration(1000);

cRL.startAnimation(animation);

Main XML:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/bg"
android:fitsSystemWindows="true"
tools:context=".MainActivity"
android:id="@+id/main">

<!-- includes unnecessary stuff -->

</RelativeLayout>

Custom RelativeLayout Java:

public class CustomRL extends RelativeLayout {

    private Context mContext;
    private View mView;

    LayoutInflater mInflater;

    public CustomRL(Context context) {
        super(context);
        mContext = context;
        mView = mInflater.inflate(R.layout.c_rl, this, true);
    }
}

Custom Относительная компоновка XML: (c_rl. xml)

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="@dimen/width"
android:layout_height="@dimen/height">

<!-- includes unnecessary stuff -->

</RelativeLayout>

размерность:

<dimen name="width">70dp</dimen>
<dimen name="height">130dp</dimen>

Почему он не вращается вокруг себя и как я могу решить эту проблему?

Редактировать:

Добавлен дополнительный код и исправлен вид в CustomRelativeLayout

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...