首页 > 解决方案 > 无法在我的自动完成文本视图中显示条码扫描文本

问题描述

我已经使用Tutorial how to create Barcode Reader app in Android Studio实现了条码扫描器。本教程使用了zxing integration. 我能够配置条形码应用程序。

 <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:gravity="center_vertical"
            android:orientation="horizontal"
            android:padding="2dp">

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="left|center_vertical"

                android:text="Smart MSN #" />

            <AutoCompleteTextView
                android:id="@+id/smart_msn_spinner"
                android:layout_width="157dp"
                android:layout_height="wrap_content"
                android:layout_gravity="left|center_vertical"
                android:inputType="number" />

            <ImageButton
                android:id="@+id/start_scan"
                android:layout_width="66dp"
                android:layout_height="match_parent"
                android:background="@color/white"
                app:srcCompat="@drawable/ic_baseline_qr_code_scanner_24" />

        </LinearLayout>


public class NewFormFragment extends Fragment {

  @BindView(R.id.start_scan)
  ImageButton startScan;
  
  @BindView(R.id.smart_msn_spinner)
  AutoCompleteTextView smartMsnSpinner;

  @Override
  public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
   bindListners();
  }

   private void bindListners() {
   .
   .
   .
   .
   startScan.setOnClickListener(startScanning);
   }

   private final View.OnClickListener startScanning = v -> {
    if(v.getId()==R.id.start_scan){
        IntentIntegrator scanIntegrator = new IntentIntegrator(getActivity());
        scanIntegrator.initiateScan();
    }
    };

  public void onActivityResult(int requestCode, int resultCode, Intent data) {
  
       IntentResult scanningResult = IntentIntegrator.parseActivityResult(requestCode, resultCode, data);
    if (scanningResult != null) {
        String scanContent = scanningResult.getContents();
        String scanFormat = scanningResult.getFormatName();
        //smartMsnSpinner.setText("FORMAT: " + scanFormat);
        smartMsnSpinner.setText(scanContent);
    }
  }
}

当我启动我的应用程序并单击扫描按钮时,我可以扫描条形码。但是扫描后我在AutoCompleteTextViewie中什么也看不到smartMsnSpinner

在调试时,我在扫描之后就看到了breakpoint从未命中onActivityResult

我一定错过了一些我不知道的东西。

任何帮助将不胜感激。

标签: android-studioandroid-fragmentszxingbarcode-scannerautocompletetextview

解决方案


推荐阅读