package com.example.smart.ui.icondraw import android.app.Activity import android.graphics.Bitmap import android.net.Uri import android.os.Bundle import android.widget.Button import android.widget.ImageView import androidx.appcompat.app.AppCompatActivity import com.bumptech.glide.Glide import com.example.basecore.util.ImageUtils import com.example.basecore.util.showCenterToast import com.example.smart.R import com.example.smart.bean.ImageRef import com.example.smart.image.ImageProvider import com.example.smart.bean.ImageDrawData import ja.burhanrashid52.photoeditor.PhotoEditor import ja.burhanrashid52.photoeditor.PhotoEditorView import ja.burhanrashid52.photoeditor.shape.ShapeBuilder import ja.burhanrashid52.photoeditor.shape.ShapeType import java.io.File class PhotoEditorActivity : AppCompatActivity() { private lateinit var photoEditor: PhotoEditor private lateinit var photoEditorView: PhotoEditorView private lateinit var saveButton: Button private lateinit var mImageProvider: ImageProvider private lateinit var path: String private lateinit var id: String private inner class ImageCallBack : ImageProvider.IImageCallback { override fun onUploadSuccess(entityRef: List) { // entityRef.forEach { // //此处path 被使用为id // ImageDrawData.onDataChange(ImageDrawData(it.id, id, it.name)) // finish() // } } override fun onUploadFailed() { showCenterToast("图片上传失败,请稍后再试...") } } override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_photo_editor) photoEditorView = findViewById(R.id.photoEditorView) saveButton = findViewById(R.id.btnSave) photoEditorView.source.setImageResource(R.drawable.shape_exclude_bg) photoEditor = PhotoEditor.Builder(this, photoEditorView) .setPinchTextScalable(true) .build() photoEditor.setBrushDrawingMode(true) mImageProvider = ImageProvider(this as Activity, ImageCallBack()) path = intent.getStringExtra("path") ?: "" id = intent.getStringExtra("id") ?: "" val imageView: ImageView = findViewById(R.id.imageView) // 从网络加载图片 Glide.with(this) .load(Uri.parse(path)) .into(imageView) findViewById