我有以下佈局(這裏給出的簡單設計):爲什麼FrameLayout在我的佈局中沒有正確設置Z順序?
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior"
tools:showIn="@layout/activity_main">
<FrameLayout
android:orientation="horizontal"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true"
>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hey, badge!"
android:layout_margin="10dp"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="AAAAA"
android:layout_margin="10dp"
android:textSize="12sp"
android:background="#ff00ff"
android:padding="10dp"
android:layout_gravity="top|end"
/>
</FrameLayout>
</RelativeLayout>
我希望設置TextView的文本「AAAA」充當按鈕徽章,也就是被放置在按鈕在其右上角,情況並非如此。
相反,當我嘗試上的HTC One M7棒棒糖,或Genymotion的Nexus 6棒棒糖這個代碼,屏幕看起來是這樣的:
當我嘗試Genymotion的Nexus相同的代碼5奇巧,一切看起來都如預期,即第一視圖(按鈕)顯示下方徽章(TextView的)
沒有人有任何線索可能是錯在這裏?
感謝, Deveti
它的工作,謝謝! 但是,我必須爲TextView添加'android:elevation =「2dp」',然後顯示徽章。不知道爲什麼,有趣。 –
我忘了說,如果你不想創建多個佈局,你可以在棒棒糖上用'View.setElevation(float)'設置海拔,或者在棒棒糖上用'ViewCompat.setElevation(float)'設置海拔。 –