用于ABPersonCopyImageDataWithFormat的Monotouch绑定

时间:2011-07-05 10:27:03

标签: iphone objective-c binding xamarin.ios

在Monotouch中,从ABPerson实例获取图像的唯一方法是使用Image属性,该属性以原始大小返回图像。

在Objective-C中有一个名为ABPersonCopyImageDataWithFormat(http://developer.apple.com/library/ios/#documentation/AddressBook/Reference/ABPersonRef_iPhoneOS/Reference/reference.html#//apple_ref/c/func/ABPersonCopyImageDataWithFormat)的函数,它可以从联系人返回缩略图像, 但是Monotouch没有为此提供绑定。

是否有人知道如何在Monotouch中调用此函数或如何创建其绑定?

谢谢, 丹尼

2 个答案:

答案 0 :(得分:1)

刚刚找到解决方案(通过反汇编monotouch.dll并仔细查看内部代码)

[DllImport("/System/Library/Frameworks/AddressBook.framework/AddressBook")]
private static extern IntPtr ABPersonCopyImageDataWithFormat(IntPtr handle, ABPersonImageFormat format);

ABPersonImageFormat format = ABPersonImageFormat.Thumbnail;
NSData data = new NSData(ABPersonCopyImageDataWithFormat(person.Handle, format));
UIImage imgThumb = UIImage.LoadFromData(data);

祝你好运!!!

答案 1 :(得分:0)

它被绑定为MonoTouch.AddressBook.ABPerson.CopyImage (ABPersonImageFormat format);