模拟器上按钮的颜色与实际设备不匹配

时间:2015-03-09 08:34:15

标签: android android-studio android-styles

我创建了一个背景外观的按钮,如下图所示。 左侧模拟器右侧的设备。

enter image description here

该设备是三星Galaxy SIII 模拟器是Nexus 5

按钮代码:

这是按钮的

的XML代码
        <Button
        android:id="@+id/button_main_start"

        android:text="@string/button_Start"
        android:textSize="30sp"

        android:layout_width="270dp"
        android:layout_height="60dp"

        android:theme="@style/buttonTheme"
        android:textAllCaps="false"

        android:gravity="center_horizontal" />


<style name="buttonTheme" parent="android:style/Theme.NoTitleBar">
    <item name="android:buttonStyle">@style/button</item>
</style>

        <style name="button" parent="android:Widget.Button">
    <item name="android:gravity">center_vertical|center_horizontal</item>
    <item name="android:textColor">#FFFFFFFF</item>
    <item name="android:shadowColor">#FF000000</item>
    <item name="android:shadowDx">0</item>
    <item name="android:shadowDy">-1</item>
    <item name="android:shadowRadius">0.2</item>
    <item name="android:textSize">16sp</item>
    <item name="android:textStyle">bold</item>
    <item name="android:background">@drawable/button</item>
    <item name="android:focusable">true</item>
    <item name="android:clickable">true</item>

</style>

<?xml version="1.0" encoding="utf-8"?>

 <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
<gradient
    android:startColor="#00CCFF"
    android:centerColor="#0000CC"
    android:endColor="#00CCFF"
    android:angle="90"/>
<padding android:left="7dp"
    android:top="7dp"
    android:right="7dp"
    android:bottom="7dp" />
<stroke
    android:width="2dip"
    android:color="#FFFFFF" />
<corners android:radius= "8.0dp" />
</shape>

移动开发新手,请告诉我是否需要更多信息。

我的解决方案: 不确定这是否是正确的解决方案,但我把&#34; android:theme =&#34; @ style / buttonTheme&#34;在manifest.xml中它已经解决了。

2 个答案:

答案 0 :(得分:1)

您应该检查布局,您必须为不同的设备设置不同的布局。同样检查您的样式,以获取不同的版本。

更新

测试删除按钮主题并添加android:background =&#34; @ drawable / button&#34;

答案 1 :(得分:0)

从你的风格中拉出<item name="android:background">@drawable/button</item>并添加:

<style name="buttonTheme" parent="android:style/Theme.NoTitleBar">
    <item name="android:buttonStyle">@style/button</item>
    <item name="selectableItemBackground">@drawable/button</item>
</style>

到你的主题。