使用ProGuard构建后,onCreateView()上的setPadding不会更新Android API 16设备上的根目录

使用ProGuard构建后,onCreateView()上的setPadding不会更新Android API 16设备上的根目录,android,android-actionbar,padding,proguard,Android,Android Actionbar,Padding,Proguard,我有一个片段,在onCreateView()上,我以编程方式设置其根视图的paddingTop以将其显示在覆盖操作栏下面。我只是说: root.setPadding(0, Math.round(getResources().getDimension(R.dimen.abc_action_bar_default_height_material)), 0, 0); 在我使用proguard构建apk之前,这在我测试的所有设备上都非常有效。然后,只有在运行API 16的设备上(到

我有一个片段,在
onCreateView()
上,我以编程方式设置其根视图的
paddingTop
以将其显示在覆盖操作栏下面。我只是说:

root.setPadding(0, 
    Math.round(getResources().getDimension(R.dimen.abc_action_bar_default_height_material)), 
    0, 0);
在我使用proguard构建apk之前,这在我测试的所有设备上都非常有效。然后,只有在运行API 16的设备上(到目前为止,我已经测试过),填充不会得到更新,根视图位于actionbar下

我尝试了许多对proguard配置的更改,但都没有成功。最新的尝试是向所有视图和支持库添加异常

我还更改了代码,在我的
onCreateView()
上添加了一个日志,我可以在控制台上看到它,并使用要更新的正确填充值。它只是不显示在UI上,仅适用于API 16上的这些设备


事实上,它在调试时起作用,这使得找到解决方案变得更加困难。有什么想法吗?

使用
getDimensionPixelOffset
而不是
getDimension

谢谢,但那没用。现在我所做的是复制我的布局资源,在那里添加填充。然后在代码中,我根据自己的逻辑决定要膨胀哪个布局。这是可行的,但并不理想。