2014-12-29 1 views
8

Ho un piccolo layout che funziona correttamente su API 19: 4.2.2 ma non riesco a farlo funzionare su API 21: 5.0.1.RelativeLayout zollipop

Ecco il layout:

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

    <Button 
     android:id="@+id/start_button" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:textStyle="bold" 
     android:textSize="30sp" 
     android:background="@color/start_button_bg" 
     android:textColor="@color/start_button_text" 
     android:text="@string/start_process"/> 

    <TextView 
     android:id="@+id/pro_icon" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:layout_margin="10dp" 
     android:layout_alignParentRight="true" 
     android:layout_alignParentTop="true" 
     android:textColor="@android:color/white" 
     android:background="@drawable/pro_icon" 
     android:text="PRO" 
     android:gravity="center" 
     android:textAppearance="?android:attr/textAppearanceMedium"/> 

</RelativeLayout> 

roba davvero semplice. Voglio solo che la vista testo sia sopra il pulsante nel relativo layout. Conosco le viste relative al layout relativo nell'ordine in cui sono aggiunte nell'xml, ma sembra che non funzioni lo stesso su lollipop. Non riesco a visualizzare TextView sul pulsante. Qualche idea?

Cheers.

risposta

15

A Button ha un elevation su Android 5.0+ per impostazione predefinita; un TextView no. L'elevazione di un widget sostituirà sostanzialmente l'ordinamento dell'asse Z impostato da RelativeLayout o FrameLayout.

Le opzioni disponibili sono:

  1. Riprogettare l'interfaccia utente di non avere i widget ordinato sull'asse Z, o

  2. Replace the StateListAnimator on your Button to modify or eliminate the elevation animation, o

  3. Tentare di cambiare l'elevazione del TextView , via android:elevation, per essere superiore a Button

+0

Non ho notato la proprietà di elevazione. Grazie. D'altra parte, c'è un modo per rimuovere l'ombra quando si modifica l'elevazione della vista? – Notbad

+0

@Notbad: Probabilmente, ma non conosco la tecnica. – CommonsWare