清空以调用虚拟方法';void android.widget.button.setonclicklistener

清空以调用虚拟方法';void android.widget.button.setonclicklistener,android,android-fragments,invoke,Android,Android Fragments,Invoke,嗨,我是android studio的新手,但我似乎无法解决这个错误。你们介意帮忙吗 Process: com.sp.ez_mart_xy, PID: 24157 java.lang.NullPointerException: Attempt to invoke virtual method 'android.view.View android.view.View.findViewById(int)' on a null object reference at com.sp.ez_mart_xy

嗨,我是android studio的新手,但我似乎无法解决这个错误。你们介意帮忙吗

Process: com.sp.ez_mart_xy, PID: 24157
java.lang.NullPointerException: Attempt to invoke virtual method 'android.view.View android.view.View.findViewById(int)' on a null object reference at com.sp.ez_mart_xy.OneFragment.onCreateView(OneFragment.java:39)
代码

 @Override
        public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle   savedInstanceState) {
            View view = inflater.inflate(R.layout.fragment_two, container, false);
            super.onCreate(savedInstanceState);
            scan_btn = (Button) view.findViewById(scan_button);
            final Activity activity = getActivity();
            scan_btn.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {
                    IntentIntegrator integrator = new IntentIntegrator(activity);
                    integrator.setDesiredBarcodeFormats(IntentIntegrator.QR_CODE_TYPES);
                    integrator.setPrompt("Scan");
                    integrator.setCameraId(0);
                    integrator.setBeepEnabled(false);
                    integrator.setBarcodeImageEnabled(false);
                    integrator.initiateScan();
                }
            });
            return view
问题似乎在于

scan_btn = button
我尝试将其更改为getview和root视图,但仍然失败。我 还尝试了stackoverflow的解决方案,但仍然崩溃。 以下是xml文件:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:weightSum="1"
    android:orientation="vertical"
    android:background="@color/zxing_custom_possible_result_points">

    <LinearLayout
        android:orientation="vertical"
        android:layout_width="match_parent"
        android:layout_height="24dp"></LinearLayout>

    <TextView
        android:text="Current Location :"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/textView"
        android:textAppearance="@style/TextAppearance.AppCompat.Body1"
        android:fontFamily="cursive"
        android:textSize="30sp"
        android:textAlignment="viewStart"
        android:typeface="serif"
        android:textStyle="normal|bold"
        android:textAllCaps="false" />

    <EditText
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:inputType="textPersonName"
        android:ems="10"
        android:id="@+id/Edit_current"
        android:selectAllOnFocus="true"
        tools:backgroundTint="@color/common_action_bar_splitter"
        android:background="@color/common_action_bar_splitter"
        android:layout_weight="0.21"
        android:hint="Scan/Type Location"
        android:textStyle="normal|italic"
        tools:background="@color/zxing_possible_result_points" />

    <LinearLayout
        android:orientation="horizontal"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_weight="0.14"></LinearLayout>

    <LinearLayout
        android:orientation="vertical"
        android:layout_width="match_parent"
        android:layout_height="115dp">

        <Button
            android:text="Scan Nearest Qr Code"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:id="@+id/scan_btn"
            android:background="@color/zxing_possible_result_points"
            android:elevation="0dp"
            android:typeface="monospace"
            android:textSize="18sp"
            android:visibility="visible" />

    </LinearLayout>

    <LinearLayout
        android:orientation="vertical"
        android:layout_width="match_parent"
        android:layout_height="224dp"
        android:elevation="1dp"
        android:weightSum="1">

        <LinearLayout
            android:orientation="vertical"
            android:layout_width="match_parent"
            android:layout_height="35dp"></LinearLayout>

        <TextView
            android:text="Destination :"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:id="@+id/Destination"
            android:textAppearance="@style/TextAppearance.AppCompat.Body1"
            android:fontFamily="cursive"
            android:textSize="30sp"
            android:textStyle="normal|bold" />

        <EditText
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:inputType="textPersonName"
            android:ems="10"
            android:id="@+id/edit_destination"
            android:hint="Example:Fish"
            android:singleLine="true"
            android:backgroundTint="@color/common_action_bar_splitter"
            android:background="@color/zxing_possible_result_points"
            android:layout_weight="0.25"
            style="@style/Widget.AppCompat.AutoCompleteTextView"
            android:selectAllOnFocus="false"
            android:textStyle="normal|italic"
            android:textAllCaps="false" />

    </LinearLayout>

</LinearLayout>

应该是

 scan_btn = (Button) view.findViewById(R.id.scan_button);
而不是
scan_btn=(按钮)view.findviewbyd(scan_按钮)

并删除这一行
super.onCreate(savedInstanceState)。我认为没有必要

应该是

 scan_btn = (Button) view.findViewById(R.id.scan_button);
而不是
scan_btn=(按钮)view.findviewbyd(scan_按钮)


并删除这一行
super.onCreate(savedInstanceState)。我认为没有必要

Remove
super.onCreate(savedInstanceState)的可能重复项扫描按钮=(按钮)视图.findViewById(R.id.scan按钮);这将解决您的问题谢谢大家,它可以正常工作,为可能重复的Remove
super.onCreate(savedInstanceState)扫描按钮=(按钮)视图.findViewById(R.id.scan按钮);这会解决你们的问题的谢谢伙计们这很有效干杯