Android Studio3.0。preView显示空白。不显示控件。但是可以编译,运行。
转载自:https://blog.csdn.net/androidzmm/article/details/80683188
Android Studio 3.1上。preView显示的是一片空白。不显示控件。但是编译。运行到真机上又没有问题。
不知道原因。新建一个也是如此。缓存也清理了。电脑也重启了。没有任何作用。看到右上角有个小红圈。点击以后看到下面报错。
现在问题就简单了。复制错误信息。Failed to load AppCompat ActionBar with unknown error.去网上一搜。答案就出来了。
找到我们的style文件。把
修改成
<style name="AppTheme" parent="Base.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>
再回去看布局。发现正常了。
苍蝇再小也是肉。万一有人需要呢。。。
可是每次新建一个项目都要去修改style总不太好。就想着去找下到底是为什么。经过查找资料。发现可能是buildToolsVersion版本和compileSdkVersion版本不一致。导致v7包导入不正确。解决办法如下:
可以看到。我的compileSdkVersion版本是28.可是我的build版本最大才到27.0.3(as2还是3以上buildToolsVersion可以不写。会用默认最大的。)。修改compileSdkVersion为27.编译版本选择27.0.3。然后点击ok。build失败。发现是v7包我用的是
implementation 'com.android.support:appcompat-v7:28.0.0-alpha3'
于是修改v7包应用为:
implementation 'com.android.support:appcompat-v7:27.1.1'
sync。成功以后。把我的样式还修改为原来的:
parent="Theme.AppCompat.Light.DarkActionBar"
然后。新建一个布局。发现可以正常显示了。所以。问题应该就是没有28的编译版本。。。
原因:buildToolsVersion版本和compileSdkVersion版本不一致。
解决办法:修改compileSdkVersion和buildToolsVersion一致。