2015-08-13 11 views
5

Jaka jest przyczyna tego błędu wyświetlania projektu w Studio Android?Wyjątek renderowania w Android Studio: "mBaselineAlignedChildIndex of LinearLayout wskazuje na widok, który nie wie, jak uzyskać linię podstawową"

Wystąpienie zgłoszone podczas renderowania: mBaselineAlignedChildIndex of LinearLayout points to a View that doesn't know how to get its baseline.

Oto układ:

<ScrollView 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" > 

     <LinearLayout 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:id="@+id/mainListView" 
      android:orientation="vertical"> 

      <ImageButton 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:background="@drawable/bg_btn_btm_actionbar" 
       android:src="@mipmap/ab_solid_example"/> 

      <ListView 
       android:id="@+id/eventStates" 
       android:layout_width="wrap_content" 
       android:layout_height="40dp" 
       android:background="@drawable/listviewimg" 
       android:drawSelectorOnTop="true" 
       android:footerDividersEnabled="true" 
       android:headerDividersEnabled="true" 
       android:textColor="#000000" /> 

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

       <Button 
        android:id="@+id/btn_cancel_callresult" 
        android:layout_width="153dp" 
        android:layout_height="wrap_content" 
        android:layout_gravity="bottom"        android:layout_marginRight="@dimen/abc_action_bar_default_padding_material" 
        android:background="@color/white" 
        android:onClick="cancelCallResult" 
        android:text="Cancel" 
        android:textAppearance="?android:attr/textAppearanceLarge" 
        android:textColor="@color/white" /> 



      </LinearLayout> 
     </LinearLayout> 
    </ScrollView> 

</LinearLayout> 
+0

Cześć Czy masz rozwiązanie to samo? Mam podobny problem. Dzięki – xrnd

Odpowiedz

0

prostu miał ten sam błąd. Wyrównanie linii podstawowej ma związek z rodzicem LinearLayout określającym linię podstawową każdego dziecka, a konkretnie ostatniego dziecka w układzie. Mój problem dotyczył TimePicker - w API 21+, jest to zegar graficzny, więc nie ma widoków tekstowych, które dostarczałyby podstawowych informacji.

Tutaj problem jest w wierszach 27-35:

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

     <Button 
      android:id="@+id/btn_cancel_callresult" 
      android:layout_width="153dp" 
      android:layout_height="wrap_content" 
      android:layout_gravity="bottom"        

Teraz brakuje "android: Orientację = pionowy" (lub poziomy) na tej wewnętrznej LinearLayout wokół przycisku, i Sam przycisk określa grawitację w obrębie rodzica ("liniowa grawitacja") "dołu". Nie określono żadnej orientacji ani wysokości dla żadnego z nich, więc zewnętrzny LinearLayout nie wie, jak określić linię podstawową.

Również ten wewnętrzny LinearLayout jest niepotrzebny. Jeśli chcesz uzyskać pustą przestrzeń między listą a przyciskiem, spróbuj użyć widgetu Space lub jeśli chcesz, aby lista wypełniała całą przestrzeń do przycisku, nadaj mu atrybut wagi ("waga układu = 1,0").

0

Wiem, że to jest stare, ale dla osób, które napotykają ten problem, jest to znany błąd, odnośnik "Issue 214062". Został rozwiązany w interfejsie API 24.

Jest to tylko problem na karcie podglądu Android Studio, a nie na rzeczywistym emulatorze lub urządzeniu, gdy zniknie widoczność TimePicker. Aby rozwiązać ten problem, należy użyć nazw narzędzi jak QuickFix, tak że przynajmniej będzie można zobaczyć podgląd, będąc wciąż ukryte w urządzeniu, tak jak poniżej:

<TimePicker 
     android:id="@+id/timerpicker" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:visibility="gone" 
     tools:visibility="visible" 
     /> 
Powiązane problemy