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);
// }
//}
}
}