Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.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
Android:API-16的样式泄漏到每个更高的API版本_Android_Android Styles - Fatal编程技术网

Android:API-16的样式泄漏到每个更高的API版本

Android:API-16的样式泄漏到每个更高的API版本,android,android-styles,Android,Android Styles,我有两个文件夹:values和values-v16。values文件夹中styles.xml文件的内容如下: <style name="Widget.App.SearcherButtonWithIcon" parent="Widget.AppCompat.Button.Borderless"> <item name="android:paddingLeft">16dp</item> </style> 问题是后一个带有26dp填充的应用程序

我有两个文件夹:values和values-v16。values文件夹中styles.xml文件的内容如下:

<style name="Widget.App.SearcherButtonWithIcon" parent="Widget.AppCompat.Button.Borderless">
    <item name="android:paddingLeft">16dp</item>
</style>

问题是后一个带有26dp填充的应用程序将应用于每个API版本中的每个视图。为什么会这样,以及如何修复它?

这是预期的行为。values-v16表示支持api 16或更高版本的设备。有关这方面的更多信息,请参阅文档:

如果您只希望api 16使用该值,请在api 17中使用默认值再次覆盖它

以下是我推荐的方法:

/res/values/styles.xml

<dimen name="searcher_padding_left_default">16dp</dimen>
<dimen name="searcher_padding_left_v16">26dp</dimen>
<dimen name="searcher_padding_left">@dimen/searcher_padding_left_default</dimen>

/res/values-v16/styles.xml
<dimen name="searcher_padding_left">@dimen/searcher_padding_left_v16</dimen>

/res/values-v17/styles.xml
<dimen name="searcher_padding_left">@dimen/searcher_padding_left_default</dimen>

这样,您只需在一个位置指定值,这可能有助于将来保持所有值的同步。

这是预期的行为。values-v16表示支持api 16或更高版本的设备。有关这方面的更多信息,请参阅文档:

如果您只希望api 16使用该值,请在api 17中使用默认值再次覆盖它

以下是我推荐的方法:

/res/values/styles.xml

<dimen name="searcher_padding_left_default">16dp</dimen>
<dimen name="searcher_padding_left_v16">26dp</dimen>
<dimen name="searcher_padding_left">@dimen/searcher_padding_left_default</dimen>

/res/values-v16/styles.xml
<dimen name="searcher_padding_left">@dimen/searcher_padding_left_v16</dimen>

/res/values-v17/styles.xml
<dimen name="searcher_padding_left">@dimen/searcher_padding_left_default</dimen>
这样,您只需在一个位置指定值,这可能有助于将来保持所有值的同步