4

Мой FrameLayout внутри a CoordinatorLayout не хочет быть wrap_content. Когда я выбираю wrap_content с помощью инструмента ui, он не устанавливает его на wrap_content, но устанавливает определенную высоту 48dp.FrameLayout wrap_content в ConstraintLayout

Я также попытался установить его непосредственно в XML-файле, и он работает ... Пока я не открою файл. Я полагаю, что редактор AS выполняет некоторую работу и сбрасывает ее высоту до 48dp.

Это как мой макет выглядит следующим образом:

<layout 
    xmlns:tools="http://schemas.android.com/tools" 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto"> 

    <data> 

     <import type="android.view.View" /> 
     <variable 
      name="viewModel" 
      type="com.mydomain.relationViewModel" /> 

    </data> 

    <RelativeLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content"> 

     <ProgressBar 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:indeterminate="true" 
      android:layout_centerInParent="true" 

      android:visibility="@{viewModel.isLoading() ? View.VISIBLE : View.GONE}"/> 

     <android.support.constraint.ConstraintLayout 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:visibility="@{viewModel.isLoading() ? View.INVISIBLE : View.VISIBLE}"> 

      <TextView 
       android:layout_width="0dp" 
       android:layout_height="wrap_content" 
       android:id="@+id/hint" 
       tools:text="Relation" 
       android:layout_marginStart="16dp" 
       app:layout_constraintLeft_toLeftOf="parent" 
       android:layout_marginLeft="16dp" 
       android:text="@string/relationship_spinner_hint" 
       android:layout_marginTop="16dp" 
       app:layout_constraintTop_toTopOf="parent" 
       app:layout_constraintBottom_toBottomOf="@+id/spinner" /> 

      <Spinner 
       android:layout_width="0dp" 
       android:layout_height="48dp" 
       android:id="@+id/spinner" 
       android:dropDownWidth="match_parent" 
       android:layout_marginEnd="16dp" 
       app:layout_constraintRight_toRightOf="parent" 
       android:layout_marginRight="16dp" 
       app:layout_constraintLeft_toRightOf="@+id/hint" 
       android:layout_marginStart="16dp" 
       android:layout_marginLeft="16dp" 
       android:layout_marginTop="16dp" 
       app:layout_constraintTop_toTopOf="parent" 

       app:setOnItemSelectedListener="@{viewModel.relationshipsListener}"/> 

      <FrameLayout 
       android:layout_width="0dp" 
       android:layout_height="48dp" 
       app:layout_constraintRight_toRightOf="parent" 
       app:layout_constraintLeft_toLeftOf="parent" 
       android:id="@+id/search_fragment_container" 
       android:layout_marginEnd="16dp" 
       android:layout_marginRight="16dp" 
       app:layout_constraintHorizontal_bias="0.0" 
       app:layout_constraintTop_toBottomOf="@+id/search_patient_title"> 

      </FrameLayout> 

      <Button 
       android:text="@string/cancel" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:id="@+id/cancel" 
       app:layout_constraintLeft_toLeftOf="parent" 
       style="@style/buttonStyle" 
       android:layout_marginTop="8dp" 
       app:layout_constraintTop_toBottomOf="@+id/search_fragment_container" /> 

      <TextView 
       android:text="@string/search_patient" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:id="@+id/search_patient_title" 
       android:layout_marginTop="8dp" 
       app:layout_constraintTop_toBottomOf="@+id/spinner" 
       android:layout_marginStart="16dp" 
       app:layout_constraintLeft_toLeftOf="parent" 
       android:layout_marginLeft="16dp" 
       tools:text="Recherche du patient" 
       style="@style/myTitle" /> 

     </android.support.constraint.ConstraintLayout> 

    </RelativeLayout> 

</layout> 

А вот скриншот моего плана (где выбранная раскладка является FrameLayout):

Blueprint

Спасибо за дальнейшее Помогите !

EDIT Полученная же проблема с CardView (кажется законной, так как это ребенок FrameLayout).

+0

Это ошибка - вы можете подать это на code.google.com с вашим примером? благодаря! –

+0

Готово. Вы можете следить за ней по этой ссылке: https://groups.google.com/forum/#!topic/android-developers/tQ2cBT0ujKI – MHogge

+0

Спасибо! ошибка похожа на https://code.google.com/p/android/issues/detail?id=225912, поэтому мы будем отслеживать это. –

ответ

Смежные вопросы