方案一
-
利用布局控制元件顯示優先級
在xml中RelativeLayout,FrameLayout,靠后的控制元件顯示在上層, -
利用margin屬性
margin屬性可以控制控制元件間的距離,屬性值為正值時,越大離得越遠,越小則離得越近,
所以可以通過給android:layout_marginTop,android:layout_marginBottom,android:layout_marginLeft,android:layout_marginRight,這四個屬性設定為負數值,會讓控制元件疊加在一起,
-
記住Button的優先級最高
從Android 5.0 開始,在同一個布局下,Button將總是位于最上層,產生原因:
stateListAnimator屬性==>Button自帶在點擊時默認有個陰影的效果用于表示按下的狀態,
如果想讓Button不覆寫其他控制元件,可以使用android:stateListAnimator="@null",去掉默認點擊的陰影效果,使Button可以被正常的覆寫,
方案二
調整布局xml中的重疊控制元件的 elevation 屬性
示例:
android:elevation="5dp"
例如在 RelativeLayout中使用了 CardView ,即使在靠后使用 Button,還是無法覆寫 CardView,原因可能是
elevation 屬性的大小問題,將對應的控制元件的elevation 屬性提高,就可以讓對應控制元件在疊加關系中由下層變為上層,
方法三
Java代碼中呼叫: A.bringToFront();讓A顯示出來
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/5564.html
標籤:Android
上一篇:CtsVerifier-Bluetooth-LE-SEcure-ClientServer-Test測驗pass但是無法選擇PassButton
