引入:
其实这是前几天一直困扰我的问题,design中只有一个界面而没有任何控件,连标题栏都没有。
csdn上有人说把systle里边改为Base.Theme,改完控件可以显示了,但是仍然没有标题栏,我知道这一定不是问题根源。本来已经放弃了。
但是今天有了些转机。
转机
今天无意中打开app:build.gradle看,发现和记忆中的有些不同。对比design的project发现,确实不一样了。突然想起之前由于logcat不显示的问题重装过Android-Studio,并且更新了Gradle。大概就是这个问题。
且design的报错是
The following classes could not be instantiated:
- android.support.v7.widget.ActionBarContainer (Open Class, Show Exception, Clear Cache)
- android.support.v7.widget.ActionBarContextView (Open Class, Show Exception, Clear Cache)
- android.support.v7.app.WindowDecorActionBar (Open Class, Show Exception, Clear Cache)
Tip: Use View.isInEditMode() in your custom views to skip code or show sample data when shown in the IDE.
即support.v7.widget下有些包的导入出了问题。
在stackOverFlow果然查到了。
我有同样的问题。我搜索了很多,我终于发现appcompat-v7:28.0.0-alpha3有一些与Android Studio的“设计视图”部分有关的错误。
因此,我建议改com.android.support:appcompat-v7:28.0.0-alpha3到com.android.support:appcompat-v7:28.0.0-alpha1版本,那么一切都OK。
当然你应该可以上网下载 com.android.support:appcompat-v7:28.0.0-alpha1
不!这一段原文我也能读懂,我要放原话[一个刚在四级扑街的渣渣最后的倔强]:
I had the same problem. I searched so much and I finally found that appcompat-v7:28.0.0-alpha3 has some bug with “Design View” part of Android Studio.
So I suggest to change com.android.support:appcompat-v7:28.0.0-alpha3 to com.android.support:appcompat-v7:28.0.0-alpha1 version and then everything is OK.
Of course you should have internet access to download com.android.support:appcompat-v7:28.0.0-alpha1
也就是说是appcompat-v7:28.0.0-alpha3出了问题。。这和我想的是差不多的。。
解决方式:
- 我直接将以前的gradle复制进来,Sync后立竿见影。
- StackOverFlow有人提出了,只要将alpha-3改为alph-1也能解决问题,实测有效!
注:
- Gradle升级后,打开一个旧的project都会提示你是否updata gradle,可以通过选择Don’t remind me in this prioject,则不会再提示更新gradle。