在渲染过程中,android studio sdk version 22exception:action_bar
当我在android studio上创build一个新项目时,它不会产生任何问题。 不过,看一下activity_main.xml
devise,它显示了这一点:
渲染问题渲染期间引发的exception:action_bar。
当我从devise页面更改sdk级别22到21时android studio显示什么
我怎么解决这个问题? 这不是重要的问题,但我想知道如何解决这个问题。
是的,只需要在下拉菜单中调整Android级别。 API级别22中的devise选项卡预览现在被打破。 我查看了该错误的堆栈跟踪,它与需要alpha通道有关。 我相信Google会在星期一修复它。 🙂
不推荐使用ActionBar,而使用API 21中添加的工具栏。但是,Android Studio模板的基本主题似乎仍然使用基于ActionBar的主题。
解决scheme不是降级您的构build工具版本,而是更改您的应用程序的基本主题。 如果您降级构build工具,则会错过支持Android 5.1及更高版本中添加的最新function。
您的基本主题列在application / android:theme下的AndroidManifest.xml中。
转到res / values / styles.xml并将父属性更改为不依赖于弃用的ActionBar的不同基本主题。 在不太可能的情况下,您的应用程序是API 21+,您可以使用Theme.Material。 否则,您将需要使用Theme.AppCompat.NoActionBar或定义您自己的基本主题。
这是一个styles.xml的例子:
<style name="AppTheme.Base" parent="Theme.AppCompat"> <item name="colorPrimary">@color/colorPrimary</item> <item name="colorPrimaryDark">@color/colorPrimaryDark</item> <item name="android:windowNoTitle">true</item> <item name="windowActionBar">false</item> </style>
如果使用这种方式,请确保在您希望显示ActionBar的XML布局中放置一个Toolbar元素。 您需要使用子级XML标签自定义工具栏。 我build议使用<include>
标签。 正如它在工具栏文档中所说,Google的新devise原则要求改变视觉风格:
在现代的Android用户界面中,开发人员应该更多地依赖工具栏视觉上不同的颜色scheme,而不是应用程序图标。 应用程序图标加标题作为标准布局的使用在API 21设备和更新版本上是不鼓励的。
android.support.v7.widget.Toolbar位于API 21之前的设备支持库中。
编辑:正如第一个评论指出的,谷歌有一个博客解释如何使用新的工具栏。 http://android-developers.blogspot.kr/2014/10/appcompat-v21-material-design-for-pre.html
对不起这个问题的人 这个问题的原因是,渲染库现在试图使用更多来自appcompat库的实际代码,以便更准确。 但是,当这个项目没有构build时,这已经暴露了Android Studio中的一些错误。
有些答案build议不需要更新您的Gradle文件或更改样式。
解决方法是一次构build项目,然后通过清除caching来刷新渲染。 查看清除caching的刷新图标的附加图像。
这个答案为我工作:
MyActivity extends AppCompatActivity
代替:
MyActivity extends ActionBarActivity // now deprecated
回到你的预览,清除caching并刷新!
经过几天的沮丧,我终于find了答案在于我的应用程序模块build.gradle! 我已经将buildToolsVersion
从22
更改为21.1.2
以便正确解决像您这样的确切exception。 这似乎与API 22: Android 5.1
有什么关系API 22: Android 5.1
目前正在打嗝。 希望Google能尽快修复。
在build.gradle中更改这些行使我快速解决了这个问题:
android { compileSdkVersion 21 buildToolsVersion "21.1.2" }
我修改buildToolsVersion "21.1.2"
,在build.gradle
(模块:应用程序) ,
不要使用buildToolsVersion "22"
请使用build API21来查看预览。 我在Mac上,build立22打破/不为我工作。 当我切换回build立21,我可以看到预览。
事实certificate,你不能使用buildToolsVersion "22"
或targetSdkVersion 22
因为它无法正确渲染。 看来它只能渲染应用程序时设置为API 21或更低,因为我得到了同样的错误,只要我改回到21它开始再次工作。 只需进入build.gradle(module:app)并将API更改回最新版本的API 21。
我通过重build项目或模块来解决这个问题。
解决:
创build一个新的文件夹values-v19
在此文件夹中创build一个styles.xml
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> <!-- For actionBar n' statusbar --> <item name="colorPrimary">#COLOR/item> <item name="colorPrimaryDark">#COLOR</item> <!-- For items --> <item name="colorAccent">#COLOR</item> </style>
是所有:)
- Android构buildgradle太慢(依赖分辨率)
- Android – LinearLayout水平与包装儿童
- Jar,Android库和Android库项目之间的区别
- 无法实例化应用程序com.android.tools.fd.runtime.BootstrapApplication?Android
- RadioButton – 如何使用自定义drawable?
- android.util.AndroidRuntimeException:在添加内容之前必须调用requestFeature()
- 我如何操作相机预览?
- Android Studio中没有libs目录
- 我在哪里可以得到Android相机应用程序的源代码?