繁体   English   中英

Android中的AppCompat和主题问题

[英]Issue with AppCompat and Themes in Android

我最近用minSdkVersion 15创建了一个新项目,编译并定位了SdkVersion 21,并进行了一些活动。 我想为我的应用程序使用默认的全黑主题,根据文档,我只需要使用Theme.AppCompat。 当我在个人电话(运行4.4.2)上对其进行测试时,我得到了黑暗的全息主题和期望的结果。 但是,当我使用Lollipop运行最新的nexus模拟器时,主题和控件看起来完全不同。 例如,棒棒糖中的开关显示为一个滑块,而没有为打开/关闭状态指定文本。

有没有办法让我保持一致的外观(在手机上的外观),而不必担心应用在新设备上的外观完全不同?

编辑:

<resources>
    <!-- Base application theme. -->
    <style name="AppTheme" parent="Theme.AppCompat">
        <!-- Customize your theme here. -->
    </style>
    <style name="AppThemeDialog" parent="Theme.AppCompat.Dialog">
        <!-- Customize your theme here. -->
    </style>
</resources>

设置:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 21
    buildToolsVersion "21.1.2"

    defaultConfig {
        applicationId "placeholder"
        minSdkVersion 15
        targetSdkVersion 21
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:21.0.3'
}

图片:

  1. 棒棒糖/仿真器版本: http//i.stack.imgur.com/u8QhX.png

  2. Kitkat /电话版本: http : //i.stack.imgur.com/u8QhX.png

最新版本的appcompat-v7专门将许多小部件UI更新为新的“材料设计”外观。 因此,如果您确实想抵抗趋势,则必须使用自己的背景手动覆盖小部件UI。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM