Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/222.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java ';立面图';在ViewPager中不显示阴影_Java_Android_Android Fragments_Android Viewpager - Fatal编程技术网

Java ';立面图';在ViewPager中不显示阴影

Java ';立面图';在ViewPager中不显示阴影,java,android,android-fragments,android-viewpager,Java,Android,Android Fragments,Android Viewpager,我有一个奇怪的bug,“elevation”属性没有显示在viewpager中的片段中 我尝试在片段的onCreateView方法中设置属性(我还在xml文件中的正确位置设置了它): 问题是,只有在片段被选为当前项并完全显示后,才会显示立面 我的错误可视化(imgur gif(编码为mp4)):我自己找到了解决方案: 问题是,我设置了一个可通过代码绘制的自定义背景: containerView.setElevation(Converter.dpToPx(getContext(), 6)); V

我有一个奇怪的bug,“elevation”属性没有显示在viewpager中的片段中

我尝试在片段的
onCreateView
方法中设置属性(我还在xml文件中的正确位置设置了它):

问题是,只有在片段被选为当前项并完全显示后,才会显示立面


我的错误可视化(imgur gif(编码为mp4)):

我自己找到了解决方案:

问题是,我设置了一个可通过代码绘制的自定义背景:

containerView.setElevation(Converter.dpToPx(getContext(), 6));
ViewCompat.setBackground(containerView, backgroundDrawable);
GradientDrawable
是由代码创建的,而不是在
drawable xml
文件中,这意味着
OutlineProvider
没有使用它

我的解决方案是从
xml
文件中使用一个现有的
可绘制的
矩形,
mutate()
将其设置为自定义颜色、角点和其他所有内容