|
|
@@ -9,10 +9,11 @@ import android.view.View;
|
|
|
import androidx.annotation.Nullable;
|
|
|
|
|
|
import com.miekir.common.utils.ViewTool;
|
|
|
+import com.miekir.mvp.presenter.InjectPresenter;
|
|
|
import com.miekir.ocr.R;
|
|
|
-import com.miekir.ocr.view.CropView;
|
|
|
-import com.miekir.ocr.view.GlideV4ImageEngine;
|
|
|
-import com.miekir.ocr.view.IndicatorText;
|
|
|
+import com.miekir.ocr.widget.CropView;
|
|
|
+import com.miekir.ocr.widget.GlideV4ImageEngine;
|
|
|
+import com.miekir.ocr.widget.IndicatorText;
|
|
|
import com.zhihu.matisse.Matisse;
|
|
|
import com.zhihu.matisse.MimeType;
|
|
|
|
|
|
@@ -25,11 +26,15 @@ import java.util.List;
|
|
|
* @date 2020/7/27 9:01
|
|
|
* Description: 菜单操作
|
|
|
*/
|
|
|
-public class MenuActivity extends CameraActivity implements CropView.onLocationListener, View.OnClickListener {
|
|
|
+public class OperationActivity extends CameraActivity implements CropView.onLocationListener, View.OnClickListener, IOperationView {
|
|
|
private static final int REQUEST_CODE_CHOOSE = 6;
|
|
|
|
|
|
+ @InjectPresenter
|
|
|
+ OperationPresenter mOperationPresenter;
|
|
|
+
|
|
|
private CropView pcv_scan;
|
|
|
private int mCurrentType = CropView.SCAN_TYPE_ALL;
|
|
|
+ private String mCurrentScene = CropView.SCAN_SCENES[mCurrentType];
|
|
|
private int[] MENU_ID_LIST = {R.id.it_postal, R.id.it_address, R.id.it_name, R.id.it_all};
|
|
|
|
|
|
@Override
|
|
|
@@ -83,6 +88,7 @@ public class MenuActivity extends CameraActivity implements CropView.onLocationL
|
|
|
if (MENU_ID_LIST[index] == viewId) {
|
|
|
indicatorText.onIndicatorClicked();
|
|
|
mCurrentType = CropView.SCAN_TYPES[index];
|
|
|
+ mCurrentScene = CropView.SCAN_SCENES[index];
|
|
|
} else {
|
|
|
indicatorText.onIndicatorRelease();
|
|
|
}
|
|
|
@@ -90,12 +96,15 @@ public class MenuActivity extends CameraActivity implements CropView.onLocationL
|
|
|
pcv_scan.setScanArea(mCurrentType);
|
|
|
}
|
|
|
|
|
|
- private List<Uri> mSelected;
|
|
|
+
|
|
|
@Override
|
|
|
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
|
|
|
super.onActivityResult(requestCode, resultCode, data);
|
|
|
- if (resultCode == RESULT_OK && requestCode == REQUEST_CODE_CHOOSE) {
|
|
|
- mSelected = Matisse.obtainResult(data);
|
|
|
+ if (resultCode == RESULT_OK && requestCode == REQUEST_CODE_CHOOSE && data != null) {
|
|
|
+ List<Uri> selectedList = Matisse.obtainResult(data);
|
|
|
+ if (selectedList != null && selectedList.size() > 0) {
|
|
|
+ mOperationPresenter.startOcrFromUri(this, selectedList.get(0), mCurrentScene);
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@@ -103,4 +112,9 @@ public class MenuActivity extends CameraActivity implements CropView.onLocationL
|
|
|
public void locationRect(int startX, int startY, int endX, int endY) {
|
|
|
// 截取的区域坐标信息
|
|
|
}
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void onOcrResult() {
|
|
|
+ // 识别结果
|
|
|
+ }
|
|
|
}
|