【发布时间】:2017-06-03 05:47:12
【问题描述】:
我知道以前有人问过类似的问题,但我已经搜索并找不到解决方案。
我正在尝试按照here 的描述设置条形码扫描仪
public class MainFragment extends Fragment implements View.OnClickListener{
private ZXingScannerView scannerView;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
final View view = inflater.inflate(R.layout.fragment_warrant, container, false);
ImageButton scanBar = (ImageButton) view.findViewById(R.id.scan_barcode);
scanBar.setOnClickListener(this);
Button checkImei = (Button) view.findViewById(R.id.btn_check);
checkImei.setOnClickListener(this);
return view;
}
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.scan_barcode:
scannerView = new ZXingScannerView(getActivity());
scannerView.setResultHandler(new ZXingScannerResultHandler());
// setContentView(scannerView);
scannerView.startCamera();
break;
case R.id.btn_check:
Toast.makeText(getActivity(), "Button", Toast.LENGTH_SHORT).show();
break;
}
}
class ZXingScannerResultHandler implements ZXingScannerView.ResultHandler {
@Override
public void handleResult(Result result) {
String resultCode = result.getText();
Toast.makeText(getActivity(), resultCode, Toast.LENGTH_LONG).show();
// setContentView(R.layout.activity_start);
scannerView.stopCamera();
}
}
}
在 Activity 中工作,但在片段中移动它时 setContentView 出现错误。是否有 setContentView 的替代方案,或者可能是使用片段的不同库?
【问题讨论】:
-
无需使用
setContentView(),关注(github.com/dm77/barcodescanner/blob/master/zxing-sample/src/…)链接了解如何将ZXingScanner实现到fragment中 -
链接是否正确,它会将我带到 404 页面?
-
是的。我已经编辑了
-
就是这样,您可以将其发布在答案中,以便我们将此问题标记为已回答。
标签: android fragment setcontentview