if (resultCode == RESULT_OK) { Bundle bundle = data.getExtras(); String scanResult = bundle.getString("result"); Cursor c = db.query("Users", FROM, "user_name='" + scanResult + "'", null, null, null, null); if (c.moveToFirst()) { resultTextView.setText("二维码验证成功:"+scanResult); } else { resultTextView.setText("二维码验证失败:"+scanResult); } // resultTextView.setText(scanResult); }
时间: 2023-11-22 12:52:23 浏览: 39
这段代码看起来是在处理二维码扫描后的结果。当结果码为RESULT_OK时,会从Intent的Extras中获取扫描结果,并使用SQLite数据库查询用户表中是否存在该用户名。如果存在,则在结果TextView中显示"二维码验证成功"+用户名,否则显示"二维码验证失败"+用户名。注释掉的代码是直接显示扫描结果。
相关问题
无法调用相册图片@Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (requestCode == CAMERA_REQUEST_CODE && resultCode == RESULT_OK) {//相机中选择图片 // 获取选择的图片的URI Bundle extras = data.getExtras(); Bitmap bitmap = (Bitmap) extras.get("data"); // 在ImageView中显示选择的图片 camerapicture.setImageBitmap(bitmap); } else if (requestCode == 102 && resultCode == RESULT_OK) {//相册中选择图片 Bundle extras = data.getExtras(); Bitmap bitmap = (Bitmap) extras.get("data"); // 在ImageView中显示选择的图片 choosepicture.setImageBitmap(bitmap); } } }
很抱歉,我之前给出的代码有误。对于从相册选择图片的情况,我们需要使用不同的方法来获取图片。以下是修正后的代码:
```java
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == CAMERA_REQUEST_CODE && resultCode == RESULT_OK) {//相机中选择图片
// 获取选择的图片的URI
Bundle extras = data.getExtras();
Bitmap bitmap = (Bitmap) extras.get("data");
// 在ImageView中显示选择的图片
camerapicture.setImageBitmap(bitmap);
}
else if (requestCode == 102 && resultCode == RESULT_OK) {//相册中选择图片
Uri selectedImage = data.getData();
try {
Bitmap bitmap = MediaStore.Images.Media.getBitmap(this.getContentResolver(), selectedImage);
// 在ImageView中显示选择的图片
choosepicture.setImageBitmap(bitmap);
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
上述代码中,我们通过`data.getData()`方法获取从相册选择的图片的URI,并使用`MediaStore.Images.Media.getBitmap()`方法将URI转换为Bitmap对象。然后将Bitmap对象显示在`choosepicture`的ImageView上。
java private static final int REQUEST_IMAGE_CAPTURE = 1; private void dispatchTakePictureIntent() { Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); if (takePictureIntent.resolveActivity(getPackageManager()) != null) { startActivityForResult(takePictureIntent, REQUEST_IMAGE_CAPTURE); } } @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { if (requestCode == REQUEST_IMAGE_CAPTURE && resultCode == RESULT_OK) { Bundle extras = data.getExtras(); Bitmap imageBitmap = (Bitmap) extras.get("data"); // 处理照片数据 } }这段代码中data是图片的路径吗
不是,data并不是图片的路径。在这段代码中,我们使用了 `startActivityForResult` 方法来启动一个拍照的 Intent,并传入了一个请求码 `REQUEST_IMAGE_CAPTURE`。当拍照完成后,系统会调用 `onActivityResult` 方法,并传入请求码、结果码以及包含了拍摄照片数据的 Intent 对象。我们可以从这个 Intent 对象中获取照片数据,而不是照片的路径。在这个例子中,我们使用了 `getExtras()` 方法获取 Intent 中的 Bundle 对象,然后从这个 Bundle 对象中获取了照片数据。