0

У меня этот макет в моей деятельности, и я хочу добавить фрагмент диалога в «map_extras», однако фрагмент диалога не размещается в центре экрана. Что я делаю неправильно?Размещение фрагмента диалога в центре экрана

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/map_activity" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" > 

    <RelativeLayout 
     android:id="@+id/map_container" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent"> 
    </RelativeLayout> 


    <RelativeLayout 
     android:id="@+id/map_extras" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" > 
    </RelativeLayout> 

</RelativeLayout> 

Это диалог макет фрагмента:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:orientation="vertical" 
    android:background="#FFFFFF" 
    android:gravity="center"> 

    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="asdf1" /> 

    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="asdf2" /> 

    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="asdf3" /> 

</LinearLayout> 

ответ

0

Что именно вы пытаетесь сделать здесь? Вы показываете первый макет на экране и помещаете второй в качестве фрагмента в нем? Есть несколько вещей, которые следует рассмотреть/попробуйте:

  • Является ли первая компоновка действительно заполняющей экран? Добавьте цвет фона для проверки.
  • Ваш второй макет имеет размер wrap_content как высота и ширина, поэтому он будет помещен в верхний левый угол его родителя, если он не задан иначе.
  • Попытка изменить map_extras быть FrameLayout с gravity=center вместо RelativeLayout
  • Вы также можете изменить второй размер макета в match_parent и центровки там.
Смежные вопросы