using System;
|
using UIKit;
|
using Shared.IOS.TBL;
|
|
namespace Shared
|
{
|
|
/// <summary>
|
/// 拍照或者选择图片
|
/// </summary>
|
public static class CropImage
|
{
|
///// <summary>
|
///// 拍照或者读取图片完成时调用的动作,string==null表示用户取消了拍照或者取消选择图片,string!=null,表示图片的路径
|
///// </summary>
|
//internal static Action<string> _callback;
|
///// <summary>
|
///// 文件名
|
///// </summary>
|
//internal static string _fileName;
|
/// <summary>
|
/// 选择类型是拍照
|
/// </summary>
|
internal static readonly int TypeCamera = 101;
|
/// <summary>
|
/// 选择图片
|
/// </summary>
|
internal static readonly int TypePicture = 102;
|
|
|
private static CropImageUtlis mCropImageUtlis;
|
|
static CropImage()
|
{
|
//mCropImageUtlis = new CropImageUtlis();
|
}
|
|
|
/// <summary>
|
/// 拍照
|
/// </summary>
|
/// <param name="callback">回调函数</param>
|
/// <param name="fileName">文件名</param>
|
public static void TakePicture(Action<string> callback, string fileName , int mRATIO_X = 1, int mRATIO_Y = 1, int OutputYSize = 200)
|
{
|
|
//_fileName = fileName;
|
mCropImageUtlis = new CropImageUtlis(Application.currentVC , TypeCamera, fileName, mRATIO_X, mRATIO_Y, (obj) => {
|
if (obj != null && obj.Length > 0)
|
{
|
callback?.Invoke(obj);
|
}
|
else {
|
callback?.Invoke(null);
|
}
|
mCropImageUtlis = null;
|
});
|
|
|
|
|
}
|
|
/// <summary>
|
/// 选择图片
|
/// </summary>
|
/// <param name="callback">回调函数</param>
|
/// <param name="fileName">文件名</param>
|
public static void SelectPicture(Action<string> callback, string fileName, int mRATIO_X = 1, int mRATIO_Y = 1, int OutputYSize = 200)
|
{
|
//_fileName = fileName;
|
mCropImageUtlis = new CropImageUtlis(Application.currentVC , TypePicture, fileName, mRATIO_X, mRATIO_Y, (obj) => {
|
if (obj != null && obj.Length > 0)
|
{
|
callback?.Invoke(obj);
|
}
|
else
|
{
|
callback?.Invoke(null);
|
}
|
|
mCropImageUtlis = null;
|
});
|
}
|
|
|
///// <summary>
|
///// OnCropImageeCallback
|
///// </summary>
|
//public class OnCropImageeCallback : Java.Lang.Object, IOnCropImageeCallback
|
//{
|
|
// Action<string> mAction;
|
// public OnCropImageeCallback(Action<string> action)
|
// {
|
// mAction = action;
|
// }
|
|
// public void OnSaveCallback(string p0)
|
// {
|
// mAction?.Invoke(p0);
|
// }
|
//}
|
}
|
}
|