我有一个奇怪的错误,其中'提升'我没有在viewpager中的片段中显示该属性。
我尝试在我的片段的onCreateView
方法中设置属性(我也将它设置在xml文件中的正确位置):
containerView.setElevation(Converter.dpToPx(getContext(), 6));
问题是只有在片段被选为当前项目并完全显示时才会显示高程。
我的错误的可视化(imgur gif(编码为mp4)):https://i.imgur.com/DHLx3UM.mp4
答案 0 :(得分:1)
我自己找到了解决方案:
问题在于我通过代码设置了自定义背景:
ViewCompat.setBackground(containerView, backgroundDrawable);
此GradientDrawable
是由代码创建的,而不是drawable-xml
文件,这意味着OutlineProvider
没有使用它。
我的解决方案是使用Rectangle Drawable
文件中的现有xml
,mutate()
文件,并为此设置自定义颜色,角落和其他所有内容。