从5.0 开始,在同一个layout下,Button将总是位于最上层,就算你在Button上覆盖了相应的View。
解决方案:参考地址:http://stackoverflow.com/questions/29906679/android-studio-button-always-appears-at-the-front
上述参考地址中提到了两个方法,分别为下面的方法1、2。
方法1:
android:stateListAnimator="@null"
方法2:
Button button = new Button(this);
button.setText("Button");
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
button.setStateListAnimator(null);
}
方法3: (效率很低,造成多了一层,不建议)
在Button 外面再套一层layout
方法4:
Button 继承了 TextView,很多情况下可以直接使用TextView替代Button