- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
当我将主题添加到 Activity 时,应用程序在使用以下 logcat 打开该 Activity 后崩溃
FATAL EXCEPTION: main
Process: com.jd.activity, PID: 16672
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.jd.activity/com.jd.activity.AlertActivity}: android.view.InflateException: Binary XML file line #37: Error inflating class com.android.internal.widget.ActionBarView
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2331)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2389)
at android.app.ActivityThread.access$900(ActivityThread.java:169)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1277)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5479)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1283)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1099)
at dalvik.system.NativeStart.main(Native Method)
Caused by: android.view.InflateException: Binary XML file line #37: Error inflating class com.android.internal.widget.ActionBarView
at android.view.LayoutInflater.createView(LayoutInflater.java:626)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:702)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:761)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:769)
at android.view.LayoutInflater.inflate(LayoutInflater.java:498)
at android.view.LayoutInflater.inflate(LayoutInflater.java:398)
at android.view.LayoutInflater.inflate(LayoutInflater.java:354)
at com.android.internal.policy.impl.PhoneWindow.generateLayout(PhoneWindow.java:3296)
at com.android.internal.policy.impl.PhoneWindow.installDecor(PhoneWindow.java:3359)
at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:362)
at android.app.Activity.setContentView(Activity.java:2031)
at com.jd.activity.AlertActivity.onCreate(AlertActivity.java:59)
at android.app.Activity.performCreate(Activity.java:5451)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1093)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2295)
... 11 more
Caused by: java.lang.reflect.InvocationTargetException
at java.lang.reflect.Constructor.constructNative(Native Method)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at android.view.LayoutInflater.createView(LayoutInflater.java:600)
... 25 more
Caused by: android.view.InflateException: Binary XML file line #23: Error inflating class <unknown>
at android.view.LayoutInflater.createView(LayoutInflater.java:626)
at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56)
at android.view.LayoutInflater.onCreateView(LayoutInflater.java:675)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:700)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:761)
at android.view.LayoutInflater.inflate(LayoutInflater.java:498)
at android.view.LayoutInflater.inflate(LayoutInflater.java:398)
at com.android.internal.widget.ActionBarView.initTitle(ActionBarView.java:1200)
at com.android.internal.widget.ActionBarView.setDisplayOptions(ActionBarView.java:982)
at com.android.internal.widget.ActionBarView.<init>(ActionBarView.java:398)
... 28 more
Caused by: java.lang.reflect.InvocationTargetException
at java.lang.reflect.Constructor.constructNative(Native Method)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at android.view.LayoutInflater.createView(LayoutInflater.java:600)
... 37 more
Caused by: java.lang.UnsupportedOperationException: Can't convert to color: type=0x2
at android.content.res.TypedArray.getColor(TypedArray.java:327)
at android.widget.TextView.<init>(TextView.java:1003)
at android.widget.TextView.<init>(TextView.java:908)
... 40 more
我在 list 中的 Activity 标签
<activity
android:name="com.jd.activity.AlertActivity"
android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|screenSize"
android:label="@string/app_name"
android:screenOrientation="portrait"
android:theme="@style/Base.TextAppearance.AppCompat"
android:windowSoftInputMode="stateHidden|adjustPan" >
</activity>
即使应用程序在添加主题后崩溃
android:theme="@style/MyTheme.ActionBar.TitleTextStyle"
当我删除主题行时,效果很好。
我已经添加了 android-support-v7-appcompat
到项目的构建路径和我从 sdk\extras\android\v7 导入的那个应用程序,勾选了“将项目复制到工作区”。
也在 list 中 <uses-sdk
android:minSdkVersion="14"
android:targetSdkVersion="21" />
我的最终目标是添加 ActionBar。有没有其他简单的方法可以在不使用主题的情况下添加操作栏?
最佳答案
我通过创建自己的主题解决了这个问题
<style name="MyTheme" parent="@android:style/Theme.Holo">
<item name="android:actionBarStyle">@style/MyActionBar</item>
<item name="android:actionOverflowButtonStyle">@style/OverflowMenuButton</item>
<item name="android:windowBackground">@color/gray</item>
<item name="android:colorBackground">@color/gray</item>
<item name="android:actionButtonStyle">@style/ActionButtonStyle</item>
<item name="android:actionModeCloseButtonStyle">@style/CloseButton</item>
<item name="android:actionModeBackground">@drawable/action_bar_inset_backgruond</item>
<item name="contentInsetLeft">10dp</item>
</style>
<style name="MyActionBar" parent="@android:style/Widget.Holo.ActionBar">
<item name="android:icon">@android:color/transparent</item>
<item name="android:background">@color/black_tint_80</item>
<item name="android:titleTextStyle">@style/AppTheme.ActionBar.TitleTextStyle</item>
<item name="android:actionOverflowButtonStyle">@style/OverflowMenuButton</item>
<item name="android:actionButtonStyle">@style/ActionButtonStyle</item>
<item name="android:actionModeCloseButtonStyle">@style/CloseButton</item>
<item name="android:actionModeBackground">@drawable/action_bar_inset_backgruond</item>
<item name="android:logo">@drawable/actionbar_space_between_icon_and_title</item>
<item name="contentInsetLeft">10dp</item>
</style>
<style name="AppTheme.ActionBar.TitleTextStyle" parent="@android:style/TextAppearance.StatusBar.Title">
<item name="android:textColor">@color/white</item>
<item name="android:textSize">20sp</item>
<item name="android:gravity">center</item>
<item name="android:paddingLeft">100dp</item>
<item name="android:actionButtonStyle">@style/ActionButtonStyle</item>
</style>
<style name="OverflowMenuButton" parent="@android:style/Widget.Holo.ActionButton.Overflow">
<item name="android:src">@drawable/ic_action_view_as_grid</item>
</style>
<style name="ActionButtonStyle" parent="@android:style/Widget.Holo.Light.ActionButton">
<item name="android:minWidth">100dip</item>
<item name="android:paddingLeft">100dip</item>
<item name="android:paddingRight">100dip</item>
</style>
<style name="CloseButton" parent="@android:style/Widget.Holo.ActionButton.CloseMode">
<item name="android:background">@drawable/ic_action_view_as_grid</item>
</style>
并在 manifest.xml 中应用它
android:theme="@style/MyTheme"
而且,在执行此操作时,无需从 ActionBarActivity
关于android - RuntimeException 无法启动 Activity .. InflateException 二进制 XML 行 #37 : Error inflating class com. android.internal.widget.ActionBarView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28878219/
我有一个 ListView ,每个项目加载一个 fragment ,其中包括另一个 fragment 。第一次充电没问题,但是当我返回到 lisview 并重新加载另一个 fragment (或相同
我浏览了 API 但没能很好地理解。我无法理解这种方法的结果。我是 Android 的新手,需要帮助。 package com.javacodegeeks.android.fragmentstest;
在我的 MenuAdapter 类中尝试膨胀 View 时,我不断收到 InflateException。我将麻烦的代码包围在 try-catch block 中并收到错误消息: 整个项目的链接: h
好吧,事情就是这样,我观看了大量视频并阅读了大量文章,但我找不到解决方案...... 基本上,我的应用程序崩溃是因为我正在膨胀,而且我找不到解决方案。 JAVA: package com.iweto;
我正在研究此链接中的 fragment :http://developer.android.com/guide/components/fragments.html 有一段代码如下: public st
在我的 Android 应用程序中,我正在构建我的第一个自定义适配器。我现在在膨胀 convertView 的那一行遇到了一个空指针。请看下面的代码: private List possibiliti
我有布局,我想膨胀它 喜欢 LinearLayout ll=(LinearLayout)findViewById(R.id.llContainer);
Fragment 中的以下几行引发异常,我无法找到其根本原因。 public View onCreateView(LayoutInflater inflater, ViewGroup containe
我在以下行上遇到强制关闭错误: view = inflater.inflate(R.layout.video_list_item, parent, false); 当将java类设置为 Activit
我正在开发一款 Android 应用,我尝试在该应用中实现社交分享按钮。 我查看了 Android 文档以进行共享 - Sharing simple data并在那里实现代码;然而,应用程序在启动时崩
我们正在尝试构建一个基于 php 的视频共享站点,允许用户上传他们自己的内容。 我们需要将所有这些视频转换为中等质量的 mp4 视频文件,以便最终通过 FlowPlayer 进行流式传输。 我们的代码
在我的应用程序中,我尝试使用 java 的 Inflater/Deflater 类来压缩/解压缩字节数组。这是我最初使用的部分代码: ByteArrayOutputStream outputSt
Deflater 压缩由 0 到 99 字节组成的字节数组(长度为 100)压缩后的字节数组被传递给 Inflater 作为解压缩的输入。解压缩器返回的长度比原始列表缺少 3 个字节。 以下是代码:
我想使用java.util.zip包恢复压缩的中等长度字符串(665个字符),压缩是通过以下代码进行的: public String compress(String s){ Deflater
有什么方法可以覆盖默认的 layoutInflater 以便能够根据我的意愿动态创建布局,同时从数据库中获取 XML 结构的数据? 哈密扎克 最佳答案 您可以使用 LayoutInflater.set
我正在尝试学习 Android,但我不明白 Inflate 的真正作用。我见过不同的示例,在这些示例中,它用于在另一个布局中插入布局,但我不确定在哪里使用它比较好。 任何人都可以提供好的例子吗? 最佳
这个问题在这里已经有了答案: Why does LayoutInflater ignore the layout_width and layout_height layout parameters
我有一个带滑动导航的 android Activity (使用 ViewPager 实现)。 public class UberActivity extends FragmentActivity {
我是 Android 的新手,我试图在 xml 中扩展布局,但我得到了一个 RuntimeException。除了我的 Activity 类和扩展 SurfaceView 的类之外,我几乎删除了所有内
在 Unity documentation他们谈论充气类型,例如在这里: 字段值不能是泛型类型(膨胀类型)的特定特化。 这究竟是什么意思? 最佳答案 Mono's documentation ,Uni
我是一名优秀的程序员,十分优秀!