无法找到此logcat消息中的问题所在

时间:2017-09-11 10:40:32

标签: android debugging android-logcat

我似乎无法在此logcat消息中找到崩溃的根源。我真的希望有人可以帮忙。如果不是没有后顾之忧。以下是我在应用程序崩溃之前收到的消息:(我真的很抱歉这么久)

  

09-11 11:34:00.889 22547-22547 / co.uk.mednet.mednet_ghana E / AndroidRuntime:FATAL EXCEPTION:main                                                                            流程:co.uk.mednet.mednet_ghana,PID:22547                                                                              java.lang.NullPointerException:尝试调用虚方法' java.lang.String co.uk.mednet.mednet_ghana.model.User.getTitle()'在null对象引用上                                                                                  at co.uk.mednet.mednet_ghana.fragments.PatientInofrmationFragment.onCreateView(PatientInofrmationFragment.java:76)                                                                                  在android.support.v4.app.Fragment.performCreateView(Fragment.java:2192)                                                                                  在android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1299)                                                                                  在android.support.v4.app.FragmentManagerImpl.moveFragmentToExpectedState(FragmentManager.java:1528)                                                                                  在android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1595)                                                                                  在android.support.v4.app.BackStackRecord.executeOps(BackStackRecord.java:758)                                                                                  在android.support.v4.app.FragmentManagerImpl.executeOps(FragmentManager.java:2363)                                                                                  在android.support.v4.app.FragmentManagerImpl.executeOpsTogether(FragmentManager.java:2149)                                                                                  在android.support.v4.app.FragmentManagerImpl.optimizeAndExecuteOps(FragmentManager.java:2103)                                                                                  在android.support.v4.app.FragmentManagerImpl.execSingleAction(FragmentManager.java:1984)                                                                                  在android.support.v4.app.BackStackRecord.commitNowAllowingStateLoss(BackStackRecord.java:626)                                                                                  在android.support.v4.app.FragmentPagerAdapter.finishUpdate(FragmentPagerAdapter.java:143)                                                                                  在android.support.v4.view.ViewPager.populate(ViewPager.java:1268)                                                                                  在android.support.v4.view.ViewPager.populate(ViewPager.java:1116)                                                                                  在android.support.v4.view.ViewPager.onMeasure(ViewPager.java:1642)                                                                                  在android.view.View.measure(View.java:18926)                                                                                  在android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5908)                                                                                  在android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1435)                                                                                  在android.widget.LinearLayout.measureVertical(LinearLayout.java:721)                                                                                  在android.widget.LinearLayout.onMeasure(LinearLayout.java:612)                                                                                  在android.view.View.measure(View.java:18926)                                                                                  在android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5908)                                                                                  在android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1435)                                                                                  在android.widget.LinearLayout.measureVertical(LinearLayout.java:721)                                                                                  在android.widget.LinearLayout.onMeasure(LinearLayout.java:612)                                                                                  在android.view.View.measure(View.java:18926)                                                                                  在android.support.v4.widget.DrawerLayout.onMeasure(DrawerLayout.java:1081)                                                                                  在android.view.View.measure(View.java:18926)                                                                                  在android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5908)                                                                                  在android.widget.FrameLayout.onMeasure(FrameLayout.java:436)                                                                                  在android.support.v7.widget.ContentFrameLayout.onMeasure(ContentFrameLayout.java:139)                                                                                  在android.view.View.measure(View.java:18926)                                                                                  在android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5908)                                                                                  在android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1435)                                                                                  在android.widget.LinearLayout.measureVertical(LinearLayout.java:721)                                                                                  在android.widget.LinearLayout.onMeasure(LinearLayout.java:612)                                                                                  在android.view.View.measure(View.java:18926)                                                                                  在android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5908)                                                                                  在android.widget.FrameLayout.onMeasure(FrameLayout.java:436)                                                                                  在android.view.View.measure(View.java:18926)                                                                                  在android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5908)                                                                                  在android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1435)                                                                                  在android.widget.LinearLayout.measureVertical(LinearLayout.java:721)                                                                                  在android.widget.LinearLayout.onMeasure(LinearLayout.java:612)                                                                                  在android.view.View.measure(View.java:18926)                                                                                  在android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5908)                                                                                  在android.widget.FrameLayout.onMeasure(FrameLayout.java:436)                                                                                  在com.android.internal.policy.impl.PhoneWindow $ DecorView.onMeasure(PhoneWindow.java:3076)                                                                                  在android.view.View.measure(View.java:18926)                                                                                  在android.view.ViewRootImpl.performMeasure(ViewRootImpl.java:2411)                                                                                  在android.view.ViewRootImpl.measureHierarchy(ViewRootImpl.java:1429)                                                                                  在android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1677)                                                                                  在android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1314)                                                                               在androi

OnCreateView代码:

    //----------------find by view--------------
    mTextName = (TextView) view.findViewById(R.id.Patient_info_text_name_patient);
    mEditFirstname = (EditText) view.findViewById(R.id.Patient_info_editText_firstname);
    mEditLastname = (EditText) view.findViewById(R.id.Patient_info_editText_lastname);
    mTextEmail = (TextView) view.findViewById(R.id.Patient_info_text_email_patient);
    mEditEmail = (EditText) view.findViewById(R.id.Patient_info_editText_email);
    mTextPhone = (TextView) view.findViewById(R.id.Patient_info_text_phone_patient);
    mEditPhone = (EditText) view.findViewById(R.id.Patient_info_editText_phone);
    mTextNum = (TextView) view.findViewById(R.id.Patient_info_text_num_patient);
    mEditNum = (EditText) view.findViewById(R.id.Patient_info_editText_num);
    mTextHCP = (TextView) view.findViewById(R.id.Patient_info_text_hcp_patient);
    mEditHCP = (EditText) view.findViewById(R.id.Patient_info_editText_hcp);

    mEditFirstname.setVisibility(View.GONE);
    mEditLastname.setVisibility(View.GONE);
    mTextName.setText(PatientActivity.sPatient.getLastname()+" "+PatientActivity.sPatient.getFirstname());
    mEditEmail.setVisibility(View.GONE);
    mTextEmail.setText(PatientActivity.sPatient.getEmail());
    mEditPhone.setVisibility(View.GONE);
    mTextPhone.setText(Long.toString(PatientActivity.sPatient.getPhone_number()));
    mEditNum.setVisibility(View.GONE);
    mTextNum.setText(PatientActivity.sPatient.getPatient_number());
    mEditHCP.setVisibility(View.GONE);
    mTextHCP.setText(format("{0}. {1}", PatientActivity.sHCP.getTitle(), PatientActivity.sHCP.getLastname()));

    return view;
}

5 个答案:

答案 0 :(得分:0)

问题的根源在这里:

  

尝试调用虚方法'java.lang.String    null对象上的co.uk.mednet.mednet_ghana.model.User.getTitle()'   参考 at   co.uk.mednet.mednet_ghana.fragments.PatientInofrmationFragment.onCreateView(PatientInofrmationFragment.java:76)   在

答案 1 :(得分:0)

异常是NullPointerException:

  

java.lang.NullPointerException:尝试调用虚方法' java.lang.String co.uk.mednet.mednet_ghana.model.User.getTitle()'在空对象引用上

您正尝试在空实例上调用.getTitle()方法。

此处抛出异常:

  

co.uk.mednet.mednet_ghana.fragments.PatientInofrmationFragment.onCreateView(PatientInofrmationFragment.java)

第76行

答案 2 :(得分:0)

它是NullPointerException你可以在前3行读到它 -

  

java.lang.NullPointerException:尝试调用虚方法' java.lang.String co.uk.mednet.mednet_ghana.model.User.getTitle()'在co.uk.mednet.mednet_ghana.fragments.PatientInofrmationFragment.onCreateView(PatientInofrmationFragment.java:76)的空对象引用上

onCreateView 方法的 PatientInofrmationFragment 中执行 User.getTitle()时,显然会说 NullPointerException

现在怎么样?您可能没有创建用户类的对象。

答案 3 :(得分:0)

似乎在PatientInofrmationFragment.onCreateView()中,User为null,因此User.getTitle()创建了一个异常。您可以在onCreateView()中初始化视图,并更新onActivityCreated()中的数据。

答案 4 :(得分:0)

在你的崩溃中看看这一行。

co.uk.mednet.mednet_ghana.model.User.getTitle()' on a null object reference

我认为你没有初始化 用户

检查您的初始化,或者如果您是从服务器接收的,请务必检查用户模型 非空