在Subfolder中移动MainActivity.java后执行失败

时间:2016-02-17 18:45:30

标签: java android main-activity

我目前正在处理我的Android项目。就像标题读取一样,我将我的MainActivity.java文件移动到我的Activitys包中,我之所以这样做,是因为我的一位朋友建议我这样做是为了概述。现在,我在启动,构建和安装工程后获得以下错误代码。

我的项目可以在https://github.com/SchoolGuy/GCFunde

查看
02-17 19:39:24.890  16607-16607/de.noname.enno.gcfunde E/AndroidRuntime﹕ FATAL EXCEPTION: main
    Process: de.noname.enno.gcfunde, PID: 16607
    java.lang.NullPointerException: Attempt to invoke virtual method 'int android.view.View.getImportantForAccessibility()' on a null object reference
            at android.widget.AbsListView.obtainView(AbsListView.java:2483)
            at android.widget.ListView.makeAndAddView(ListView.java:1864)
            at android.widget.ListView.fillDown(ListView.java:698)
            at android.widget.ListView.fillFromTop(ListView.java:759)
            at android.widget.ListView.layoutChildren(ListView.java:1673)
            at android.widget.AbsListView.onLayout(AbsListView.java:2271)
            at android.view.View.layout(View.java:15695)
            at android.view.ViewGroup.layout(ViewGroup.java:4981)
            at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1703)
            at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1557)
            at android.widget.LinearLayout.onLayout(LinearLayout.java:1466)
            at android.view.View.layout(View.java:15695)
            at android.view.ViewGroup.layout(ViewGroup.java:4981)
            at android.support.design.widget.CoordinatorLayout.layoutChild(CoordinatorLayout.java:1034)
            at android.support.design.widget.CoordinatorLayout.onLayoutChild(CoordinatorLayout.java:744)
            at android.support.design.widget.ViewOffsetBehavior.onLayoutChild(ViewOffsetBehavior.java:42)
            at android.support.design.widget.AppBarLayout$ScrollingViewBehavior.onLayoutChild(AppBarLayout.java:1180)
            at android.support.design.widget.CoordinatorLayout.onLayout(CoordinatorLayout.java:757)
            at android.view.View.layout(View.java:15695)
            at android.view.ViewGroup.layout(ViewGroup.java:4981)
            at android.support.v4.widget.DrawerLayout.onLayout(DrawerLayout.java:1043)
            at android.view.View.layout(View.java:15695)
            at android.view.ViewGroup.layout(ViewGroup.java:4981)
            at android.widget.FrameLayout.layoutChildren(FrameLayout.java:573)
            at android.widget.FrameLayout.onLayout(FrameLayout.java:508)
            at android.view.View.layout(View.java:15695)
            at android.view.ViewGroup.layout(ViewGroup.java:4981)
            at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1703)
            at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1557)
            at android.widget.LinearLayout.onLayout(LinearLayout.java:1466)
            at android.view.View.layout(View.java:15695)
            at android.view.ViewGroup.layout(ViewGroup.java:4981)
            at android.widget.FrameLayout.layoutChildren(FrameLayout.java:573)
            at android.widget.FrameLayout.onLayout(FrameLayout.java:508)
            at android.view.View.layout(View.java:15695)
            at android.view.ViewGroup.layout(ViewGroup.java:4981)
            at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1703)
            at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1557)
            at android.widget.LinearLayout.onLayout(LinearLayout.java:1466)
            at android.view.View.layout(View.java:15695)
            at android.view.ViewGroup.layout(ViewGroup.java:4981)
            at android.widget.FrameLayout.layoutChildren(FrameLayout.java:573)
            at android.widget.FrameLayout.onLayout(FrameLayout.java:508)
            at android.view.View.layout(View.java:15695)
            at android.view.ViewGroup.layout(ViewGroup.java:4981)
            at android.view.ViewRootImpl.performLayout(ViewRootImpl.java:2209)
            at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1943)
            at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1126)
            at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:6041)
            at android.view.Choreographer$CallbackRecord.run(Choreographer.java:792)
            at android.view.Choreographer.doCallbacks(Choreographer.java:596)
            at android.view.Choreographer.doFrame(Choreographer.java:557)
            at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:778)
            at android.os.Handler.handleCallback(Handler.java:739)
            at android.os.Handler.dispatchMessage(Handler.java:95)
            at android.os.Looper.loop(Looper.java:155)
            at android.app.ActivityThread.main(ActivityThread.java:5727)
            at java.lang.reflect.Method.invoke(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:372)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1029)
            at com.android.internal.os.
02-17 19:39:28.163  16607-16607/de.noname.enno.gcfunde D/Process﹕ killProcess, pid=16607
02-17 19:39:28.173  16607-16607/de.noname.enno.gcfunde D/Process﹕ com.android.internal.os.RuntimeInit$UncaughtHandler.uncaughtException:138 java.lang.ThreadGroup.uncaughtException:693 java.lang.ThreadGroup.uncaughtException:690

如果你可以帮助我会很棒。我正在使用IntelliJ 15.0.2,我已经完成了Invalidate Cache和Restart。据我所知,我认为这个问题不是直接属于我的一类。

提前致谢, School_guy

2 个答案:

答案 0 :(得分:1)

这似乎是ListView问题 - 可能您的getView方法返回null而不是实际的View对象。检查ListAdapter实现,确保永远不会在public View getView(int position, View convertView, ViewGroup parent)方法中返回null。

正如我在GeocacheListAdapter.java中的代码中所看到的,if语句错误 - 检查应该是(convertView == null)而不是if(convertView != null)

if (convertView == null) {
            Holder holder = new Holder();
            convertView = layoutInflater.inflate(R.layout.row_layout, null);
            //...
}

答案 1 :(得分:0)

使用新软件包命名更新AndroidManifest.xml文件中MainActivity的活动代码。