**更新/解决方法**:我必须把它推到现场,所以我删除了我正在使用的操作栏导航模块,只需使用默认的android导航和硬件后退按钮就可以了。
我有一个应用程序正在使用一些堆栈操作导航。 iOS工作得很好,但在Android中,如果我获得3个视图深度,当我点击操作栏箭头返回时,它会崩溃
[WARN] : W/System.err: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean org.appcelerator.kroll.KrollDict.containsKey(java.lang.Object)' on a null object reference
[WARN] : W/System.err: at org.appcelerator.kroll.KrollProxy.hasProperty(KrollProxy.java:531)
[WARN] : W/System.err: at ti.modules.titanium.ui.widget.TiUITableView.processProperties(TiUITableView.java:167)
[WARN] : W/System.err: at org.appcelerator.kroll.KrollProxy.setModelListener(KrollProxy.java:1173)
[WARN] : W/System.err: at org.appcelerator.titanium.proxy.TiViewProxy.realizeViews(TiViewProxy.java:513)
[WARN] : W/System.err: at org.appcelerator.titanium.proxy.TiViewProxy.handleGetView(TiViewProxy.java:504)
[WARN] : W/System.err: at org.appcelerator.titanium.proxy.TiViewProxy.getOrCreateView(TiViewProxy.java:482)
[WARN] : W/System.err: at org.appcelerator.titanium.proxy.TiViewProxy.realizeViews(TiViewProxy.java:520)
[WARN] : W/System.err: at org.appcelerator.titanium.proxy.TiViewProxy.handleGetView(TiViewProxy.java:504)
[WARN] : W/System.err: at org.appcelerator.titanium.proxy.TiViewProxy.getOrCreateView(TiViewProxy.java:482)
[WARN] : W/System.err: at org.appcelerator.titanium.proxy.TiViewProxy.realizeViews(TiViewProxy.java:520)
[WARN] : W/System.err: at org.appcelerator.titanium.proxy.TiViewProxy.handleGetView(TiViewProxy.java:504)
[WARN] : W/System.err: at org.appcelerator.titanium.proxy.TiViewProxy.getOrCreateView(TiViewProxy.java:482)
[WARN] : W/System.err: at org.appcelerator.titanium.proxy.TiViewProxy.handleAdd(TiViewProxy.java:692)
[WARN] : W/System.err: at org.appcelerator.titanium.proxy.TiViewProxy.add(TiViewProxy.java:585)
[WARN] : W/System.err: at org.appcelerator.kroll.runtime.v8.V8Object.nativeFireEvent(Native Method)
[WARN] : W/System.err: at org.appcelerator.kroll.runtime.v8.V8Object.fireEvent(V8Object.java:62)
[WARN] : W/System.err: at org.appcelerator.kroll.KrollProxy.doFireEvent(KrollProxy.java:872)
[WARN] : W/System.err: at org.appcelerator.kroll.KrollProxy.handleMessage(KrollProxy.java:1095)
[WARN] : W/System.err: at org.appcelerator.titanium.proxy.TiViewProxy.handleMessage(TiViewProxy.java:360)
[WARN] : W/System.err: at android.os.Handler.dispatchMessage(Handler.java:98)
[WARN] : W/System.err: at android.os.Looper.loop(Looper.java:148)
[WARN] : W/System.err: at android.app.ActivityThread.main(ActivityThread.java:5417)
[WARN] : W/System.err: at java.lang.reflect.Method.invoke(Native Method)
[WARN] : W/System.err: at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
[WARN] : W/System.err: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
[ERROR] : TiExceptionHandler: (main) [7825,17084] ----- Titanium Javascript Runtime Error -----
[ERROR] : TiExceptionHandler: (main) [0,17084] - In ti:/view.js:22,8
[ERROR] : TiExceptionHandler: (main) [0,17084] - Message: Uncaught Attempt to invoke virtual method 'boolean org.appcelerator.kroll.KrollDict.containsKey(java.lang.Object)' on a null object reference
[ERROR] : TiExceptionHandler: (main) [0,17084] - Source: _add.call(this, child);
[ERROR] : V8Exception: Exception occurred at ti:/view.js:22: Uncaught Attempt to invoke virtual method 'boolean org.appcelerator.kroll.KrollDict.containsKey(java.lang.Object)' on a null object reference
[ERROR] : V8Exception: Attempt to invoke virtual method 'boolean org.appcelerator.kroll.KrollDict.containsKey(java.lang.Object)' on a null object reference
在我尝试调试期间,当它从堆栈中弹出视图时会出现问题。我有一个名为stack的对象,我想将它转储到控制台,这样我就可以查看其中的内容,或者它是否确实为空。
我已尝试Ti.API.info(JSON.stringify(stack))
,但这会导致序列化错误。
知道如何转储堆栈对象或查看它在特定点包含的内容吗?