Android 如何通过扫描仪将数据添加到TableLayout?
我对Android应用程序的开发还不熟悉。我试图通过扫描仪将数据添加到表格中,问题是,当我启动扫描仪时,它会读取条形码,但我无法将该值添加到表格中。但是,如果我在不打开扫描仪的情况下添加数据,我的表可以正常工作,我有以下代码,有人可以支持我。多谢各位 在设计方面,我有以下几点: *1-文本视图*2-编辑文本*2-按钮*1-表格布局Android 如何通过扫描仪将数据添加到TableLayout?,android,android-layout,android-studio,zxing,barcode-scanner,Android,Android Layout,Android Studio,Zxing,Barcode Scanner,我对Android应用程序的开发还不熟悉。我试图通过扫描仪将数据添加到表格中,问题是,当我启动扫描仪时,它会读取条形码,但我无法将该值添加到表格中。但是,如果我在不打开扫描仪的情况下添加数据,我的表可以正常工作,我有以下代码,有人可以支持我。多谢各位 在设计方面,我有以下几点: *1-文本视图*2-编辑文本*2-按钮*1-表格布局 <LinearLayout android:layout_width="match_parent" android:layout_height=
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<TextView
android:id="@+id/scan_format"
android:hint="muestra datos del codigo"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textIsSelectable="true"
android:layout_centerHorizontal="true"
android:layout_below="@id/scan_button" />
<EditText
android:id="@+id/txtname"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:ems="10"
android:inputType="textPersonName"
android:text="DATO1" />
<EditText
android:id="@+id/txtlastname"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:ems="10"
android:inputType="textPersonName"
android:text="DATO2" />
<Button
android:id="@+id/scan_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:onClick="Escanear"
android:text="ABRIR ESCANER" />
<Button
android:id="@+id/button"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="AGREGAR DATOS A LA TABLA" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:orientation="vertical">
<ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent">
<HorizontalScrollView
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TableLayout
android:id="@+id/table"
android:layout_width="wrap_content"
android:layout_height="match_parent">
</TableLayout>
</HorizontalScrollView>
</ScrollView>
</LinearLayout>
您是否可以尝试在
main活动
类中添加实现ZXingScannerView.ResultHandler
,而不是在类中创建新类,然后创建该类的一个属性,如:私有ZXingScannerView mScannerView
然后,当您要扫描代码时,执行以下操作:
mScannerView = new ZXingScannerView(this);
mScannerView.setResultHandler(this);
setContentView(mScannerView)
mScannerView.startCamera();
当您实现ZXingScannerView.ResultHandler
时,您必须创建以下方法:
@Override
public void handleResult(Result result) {
Toast.makeText(getApplicationContext(), result.getText(), Toast.LENGTH_LONG).show();
setContentView(R.layout.activity_main);
mScannerView.stopCamera();
}
尝试此代码后,能否验证
Toast
显示的内容是否正确?您好,感谢您快速回答。扫描仪读取数据没有问题。我遇到的问题是,我无法将扫描的数据添加到TableLayout,一旦扫描仪读取TableLayout中的条形码,它们就不会被添加。在类“zxingscanner”中,我处理以下指令:String[]item=newstring[]{dato,“prueba”,“prueba”};和tableDynamic.addItems(项目);将数据添加到TableLayout,但它们不起作用。谢谢。你好,李嘉图,你是说结果
是正确的吗?发布你的完整代码,我会尽力帮助你和你试图阅读的QR
implementation 'me.dm7.barcodescanner:zxing:1.9.8'
mScannerView = new ZXingScannerView(this);
mScannerView.setResultHandler(this);
setContentView(mScannerView)
mScannerView.startCamera();
@Override
public void handleResult(Result result) {
Toast.makeText(getApplicationContext(), result.getText(), Toast.LENGTH_LONG).show();
setContentView(R.layout.activity_main);
mScannerView.stopCamera();
}