나는이 설정을 사용하여 프로젝트와 안드로이드 스튜디오 2.2.1을 사용하고 있습니다 : I 버튼 배경을 변경하려면 GUI를 사용하는 경우버튼에 android : background를 설정하면 L/R 패딩이 손실되는 이유는 무엇입니까?
compileSdkVersion 24
buildToolsVersion "24.0.2"
minSdkVersion 16
targetSdkVersion 24
, 그것은 레이아웃이 추가 : 다음
android:background="@color/colorPrimary"
, 4.4 가상 장치 (AMD 시스템에 있고 빠른 에뮬레이터를 원하기 때문에 Microsoft의 Android 에뮬레이터) 또는 Android 6.0.1이 설치된 Samsung Galaxy S6에서 앱을 실행하면 버튼의 색상이 정확하지만 잃을 수 있습니다 왼쪽 및 오른쪽 패딩 및 텍스트는 버튼의 왼쪽 및 오른쪽 가장자리로 오른쪽으로 실행됩니다.
backgroundTint 만 설정하면 단추에 올바른 색상이 있지만 가상 장치에는 올바른 채우기가 적용됩니다. 그러나 S6에서는 올바른 색상과 패딩을 사용합니다.
이것은 어딘가에있는 버그처럼 보이지만 어디서 볼 수 있습니까? 코드 생성에 있습니까? 아니면 Android 4.4의 버그입니까?
는 나는 이러한 솔루션의 일부로서 복잡한인지, 안드로이드 스튜디오는 두 플랫폼 수준에 대한 올바른 작동하게하는 데 필요한 어떤 일을해야한다고 생각 :Standard Android Button with a different color
또는 뭔가 더 간결.
내 styles.xml 파일을 보여줍니다
<resources>
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
</style>
</resources>
내 AndroidManifest를 테마 설정은 다음과 같습니다
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme"
BTW, [배경 요청] (http://code.google.com/p/android/issues/detail?id=224980)을 제출하여 Lint가 배경색을 ' 버튼 '. 틀림없이, 이것은 당신의 "패딩이 어디 갔는지"를 직접적으로 언급하지 않을 것입니다. 걱정할 필요는 없지만 'Button'배경은 보통 단순한 색상이 아니라는 점을 지적하는 데 도움이됩니다. – CommonsWare
나는 발견 android.support.v7.widget.AppCompatButton : http://stackoverflow.com/questions/32335232/button-backgroundtint-not-working-with-appcompat-v23 과로 변경 with : app : backgroundTint = "@ color/colorPrimary" 모든 것이 올바르게 작동합니다. – Mark
방금도 만났습니다. https://code.google.com/p/android/issues/detail?id=203872 이렇게 항상 작동하지 않을 수도 있습니다. – Mark