小编zil*_*inx的帖子

在Android中为应用程序设置NoTitleBar样式时为getDrawingCache

在我的清单中,我指定了(对于整个应用程序)样式:

  android:theme="@android:style/Theme.NoTitleBar"
Run Code Online (Sandbox Code Playgroud)

然后在我的应用程序中,我想使用绘图缓存创建应用程序的屏幕截图:

  View activityView = getActivity().getWindow().getDecorView().findViewById(android.R.id.content);
  activityView.setDrawingCacheEnabled(true);
  Bitmap currentScreen = Bitmap.createBitmap(activityView.getDrawingCache());
  activityView.setDrawingCacheEnabled(false);
Run Code Online (Sandbox Code Playgroud)

问题是屏幕截图上有一个空白(标题栏的大小).如果标题栏已打开,或者应用程序处于全屏模式,我会获得正确的屏幕截图.我尝试使用buildDrawingCache(true),但它没有任何区别.任何想法如何在noTitleBar模式下获得"真正的"屏幕截图?

android screenshot

7
推荐指数
1
解决办法
569
查看次数

AndroidRuntimeException:在添加Honeycomb 3.1 - 3.2.1独有的内容之前,必须调用requestFeature()

上次更新后,我的应用有以下问题:

java.lang.RuntimeException: Unable to start activity ComponentInfo{my.package/my.package.MyMainActivity}: android.util.AndroidRuntimeException: requestFeature() must be called before adding content
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1818)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1834)
at android.app.ActivityThread.access$500(ActivityThread.java:122)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1027)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:132)
at android.app.ActivityThread.main(ActivityThread.java:4126)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:491)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:844)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:602)
at dalvik.system.NativeStart.main(Native Method)
Caused by: android.util.AndroidRuntimeException: requestFeature() must be called before adding content
at com.android.internal.policy.impl.PhoneWindow.requestFeature(PhoneWindow.java:214)
at android.support.v7.app.ActionBarActivityDelegateHC.onCreate(ActionBarActivityDelegateHC.java:38)
at android.support.v7.app.ActionBarActivity.onCreate(ActionBarActivity.java:98)
at my.package.MyBaseActivity.onCreate(MyBaseActivity.java:68)
at my.package.MyApiServiceActivity.onCreate(MyApiServiceActivity.java:51)
at my.package.MyActivity.onCreate(MyActivity.java:88)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1050)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1782)
... 11 more
Run Code Online (Sandbox Code Playgroud)

但是,我从不打电话requestWindowFeature或类似.也没有涉及对话.该报告本身来自BugSense,我自己从未遇到过这个问题.这是一个相当受欢迎的应用程序,该问题是Android Honeycomb 独有的:3.2,3.2.1和3.1.它在以前版本的应用程序中没有发生.自更新以来功能的唯一变化是我切换到的事实.onCreateActionBarSherlockActionBarCompat

任何人都发现了这个问题和/或有任何想法如何克服这个问题? …

android exception oncreate android-actionbar-compat

6
推荐指数
1
解决办法
2544
查看次数