【问题标题】:why does DrawerLayout are not working on sony ericson xperia API 8 - 2.3?为什么 DrawerLayout 不适用于索尼爱立信 xperia API 8 - 2.3?
【发布时间】:2014-05-03 22:55:50
【问题描述】:

我正在开发一些带有 DrawerLayout 和 ActionBarDrawerToggle 滑块菜单的应用程序。 一切都很好,但是当我尝试在“xperia arc”设备中运行这个应用程序时,应用程序崩溃并且没有加载! 我有很多设备可以检查他们的应用程序: 银河s4, 银河 2 , 银河注 3, , 索尼爱立信 xperia。

仅在 xperia 中该应用无法运行! 什么原因!?

请帮助我,我在这个问题上花费了几天和几个小时,却不知道是什么原因!

Logcat error (Xperia arc) :
05-04 01:59:05.058: E/AndroidRuntime(15484): FATAL EXCEPTION: main
05-04 01:59:05.058: E/AndroidRuntime(15484): java.lang.NoSuchMethodError: com.bba.workclock.MainActivity.getActionBar
05-04 01:59:05.058: E/AndroidRuntime(15484):    at com.bba.workclock.MainActivity.settingItems(MainActivity.java:1657)
05-04 01:59:05.058: E/AndroidRuntime(15484):    at com.bba.workclock.MainActivity.onCreate(MainActivity.java:124)
05-04 01:59:05.058: E/AndroidRuntime(15484):    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
05-04 01:59:05.058: E/AndroidRuntime(15484):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1623)
05-04 01:59:05.058: E/AndroidRuntime(15484):    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1675)
05-04 01:59:05.058: E/AndroidRuntime(15484):    at android.app.ActivityThread.access$1500(ActivityThread.java:121)
05-04 01:59:05.058: E/AndroidRuntime(15484):    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:943)
05-04 01:59:05.058: E/AndroidRuntime(15484):    at android.os.Handler.dispatchMessage(Handler.java:99)
05-04 01:59:05.058: E/AndroidRuntime(15484):    at android.os.Looper.loop(Looper.java:130)
05-04 01:59:05.058: E/AndroidRuntime(15484):    at android.app.ActivityThread.main(ActivityThread.java:3701)
05-04 01:59:05.058: E/AndroidRuntime(15484):    at java.lang.reflect.Method.invokeNative(Native Method)
05-04 01:59:05.058: E/AndroidRuntime(15484):    at java.lang.reflect.Method.invoke(Method.java:507)
05-04 01:59:05.058: E/AndroidRuntime(15484):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:866)
05-04 01:59:05.058: E/AndroidRuntime(15484):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:624)
05-04 01:59:05.058: E/AndroidRuntime(15484):    at dalvik.system.NativeStart.main(Native Method)

请不要拒绝我的问题对我很重要

【问题讨论】:

  • 请在问题中包含来自 LogCat 的异常堆栈跟踪。
  • 我附上了错误
  • 哪个 android API 正在运行 xperia 设备?

标签: java android android-actionbar drawerlayout


【解决方案1】:

来自http://developer.android.com/guide/topics/ui/actionbar.html

注意:请务必从适当的包中导入 ActionBar 类(和相关 API):

If supporting API levels lower than 11:
import android.support.v7.app.ActionBar
If supporting only API level 11 and higher:
import android.app.ActionBar

【讨论】:

【解决方案2】:

ActionBar 最初是在 Android 3.0 中引入的!要使其适用于 2.3.4 等较旧的 android 版本,您可以从 v7 支持库扩展 ActionBarActivity。

【讨论】:

  • ok.. 我添加了库,但接下来呢?我需要在我的代码中更改什么?我用 getActionBar().setHomeButtonEnabled(true); getActionBar().setDisplayHomeAsUpEnabled(true);现在在我添加了库之后我需要改变什么?
  • 最好让你的Activity扩展ActionBarActivity
【解决方案3】:

如果您添加了 android.support.v7 库,请将每个 getActionBar() 替换为 getSupportActionBar()

【讨论】:

  • 它给了我一个“未定义”。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多