我试图在Android 5.0中将ListView中的图像与详细信息页面之间进行英雄转换.但是对于我的大约50%的图像,Android崩溃,但下面有例外.我的图像是600x400,但我尝试将它们更改为200x100,但得到了同样的错误.当它工作时,它看起来很棒,但我看不出各种图像之间的差异.真的不确定为什么它声称这个图层太大了,有人知道吗?
private void handleNewsItemClicked(AdapterView<?> arg0, View viewClicked, int arg2) {
TopNewsItem item = ((TopNewsItem)arg0.getAdapter().getItem(arg2));
Intent intent = new Intent(getActivity(), TopNewsDetailsActivity.class);
intent.putExtra(TopNewsDetailsActivity.ARGS_ID, item.getGuid().getId());
intent.putExtra(TopNewsDetailsActivity.ARGS_IMAGE, imageUrl);
if(Build.VERSION.SDK_INT >= 21) {
ActivityOptions options = ActivityOptions
.makeSceneTransitionAnimation(this.getActivity(),
viewClicked.findViewById(R.id.image), "article_image");
this.getActivity().startActivity(intent, options.toBundle());
}else
getActivity().startActivity(intent);
}
}
W/OpenGLRenderer(18137): Layer exceeds max. dimensions supported by the GPU (1080x4628, max=4096x4096)
D/AndroidRuntime(18137): Shutting down VM
V/GAV3 (18137): Thread[main,5,main]: Tracking Exception: IllegalStateException (@MessageQueue:nativePollOnce:-2) {main}
/AndroidRuntime(18137): FATAL EXCEPTION: main
E/AndroidRuntime(18137): Process: myapp.app, PID: 18137
E/AndroidRuntime(18137): java.lang.IllegalStateException: Unable to create layer …Run Code Online (Sandbox Code Playgroud) 致命异常:java.lang.IllegalStateException无法为LinearLayout创建图层,最大尺寸为768x5440,最大尺寸为8192,颜色类型4具有上下文1
android.os.MessageQueue.nativePollOnce (MessageQueue.java)
android.os.Looper.loop + 181 (Looper.java:181)
android.app.ActivityThread.main + 7097 (ActivityThread.java:7097)
java.lang.reflect.Method.invoke (Method.java)
com.android.internal.os.ZygoteInit.main + 975 (ZygoteInit.java:975)
Run Code Online (Sandbox Code Playgroud)
我从Firebase Crashlytics收到了nativePollOnce.java崩溃警报,但是许多(星系j4 +,j6 +)模型中只有少数会频繁崩溃。我该如何解决?