Почему СТАРТ и ТОП неожиданно работают для гравитации Относительного Макета - PullRequest
0 голосов
/ 21 октября 2019

Я провел несколько экспериментов с гравитацией Relative Layout в Android Studio. Я очень озадачен полученными результатами. Давайте посмотрим на мой xml.

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="top" >
    <Button
        android:text="Apple"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:layout_marginLeft="20dip" />
</RelativeLayout>

Когда я установил android: гравитация на влево , вправо или внизу Я получаю правильные гравитационные эффекты. Вид перемещается влево, вправо или вниз соответственно. Однако, если я установлю android: gravity на top , я не получу никакого видимого эффекта.

У меня есть несколько других странностей. Значение влево , вправо , end перемещает представление, но значение start не перемещает. Почему? ИМХО, если мы используем LTR, «старт» должен быть равен left . Я знаю, что значение start | top является значением по умолчанию для силы тяжести, но это не помогает мне понять проблему. Пожалуйста, помогите мне прояснить ситуацию. Спасибо.

...