.实现用户保存微信,支付宝等应用的收款二维码,实现快速收款功能,实现此功能需要图片裁切,图片保存,文件读取等技术,难点是如何实现用户将所选的图片裁切出需要使用的二维码。在GIT上下载了lib-cropview来偷懒,下面是使用这个库的方法。
1.项目地址点击打开链接
2.需要添加Model的方法使用(1.添加Model,2.gradle里关联model
compile project(path: ':lib-cropview'))
<activity android:name="com.jeanboy.cropview.cropper.CropActivity" android:theme="@style/AppTheme.NoActionBar"/>
<br>
4.在调用的Activity实现CropHandle方法
@Override public Activity getActivity() { return this; } @Override public CropperParams getParams() { //配置裁切框比例 return new CropperParams(1, 1); //不约束裁切比例 // return new CropperParams(0, 0); } @Override public void onCropped(Uri uri) { Log.d("=====onCropped======", "======裁切成功=======" + uri); } @Override public void onCropCancel() { Log.d("=====onCropCancel====", "======裁切取消====="); } @Override public void onCropFailed(String msg) { Log.d("=====onCropFailed===", "=======裁切失败======" + msg); }
5.初始化Crop Manage
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); CropperManager.getInstance().build(this); } @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); CropperManager.getInstance().handlerResult(requestCode, resultCode, data); }
调用操作
CropperManager.getInstance().pickFromCamera();//拍照裁切 CropperManager.getInstance().pickFromGallery();//图库选择裁切
CropActivity不需要ActionBar
<style name="AppTheme.NoActionBar" parent="AppTheme"> <!-- 关闭ActionBar --> <item name="windowActionBar">false</item> <!-- 隐藏title --> <item name="windowNoTitle">true</item></style>
至此图片裁切功能完成。
相关推荐:
以上是图片裁剪功能开发实例的详细内容。更多信息请关注PHP中文网其他相关文章!