Xamarin.ios 从ABPeoplePickerModule设置我的文本字段的文本时收到SIGSEGV

Xamarin.ios 从ABPeoplePickerModule设置我的文本字段的文本时收到SIGSEGV,xamarin.ios,ios6,segmentation-fault,abpeoplepickerview,Xamarin.ios,Ios6,Segmentation Fault,Abpeoplepickerview,在我的应用程序中,用户需要输入一些地址信息。 从1.0版开始,我就提供了一个地址簿按钮。 这在我以前的测试中运行良好,但现在当我尝试设置UITextField.Text属性时,我得到了一个SIGSEGV。每次我尝试在MonoTouchs调试模式下从PeoplePicker中选择地址时,都会发生此错误。当我尝试在iPhone上选择地址时,eror会在设置文本字段和按下下一个ViewController之间随机出现。 我的代码中有什么错误吗?还是一个bug? //AB按钮事件 addressBoo

在我的应用程序中,用户需要输入一些地址信息。 从1.0版开始,我就提供了一个地址簿按钮。 这在我以前的测试中运行良好,但现在当我尝试设置UITextField.Text属性时,我得到了一个SIGSEGV。每次我尝试在MonoTouchs调试模式下从PeoplePicker中选择地址时,都会发生此错误。当我尝试在iPhone上选择地址时,eror会在设置文本字段和按下下一个ViewController之间随机出现。 我的代码中有什么错误吗?还是一个bug?

//AB按钮事件
addressBook.TouchUpInside+=委托{
//创建新选择器
ABPeoplePickerNavigationController PP=新的ABPeoplePickerNavigationController();
//取消活动
PP.已取消+=代表{
NavigationController.DismissViewController(true,null);
};
//选择事件
PP.SelectPerson+=委托(对象发送者、ABPeoplePickerSelectPersonEventArgs e){
//详细个人视图
ABPersonViewController pv=新的ABPersonViewController();
//单击属性时的操作
pv.PerformDefaultAction+=委托(对象人、ABPersonViewPerformDefaultActionEventArgs ev){
//如果该属性是一个地址
if(ev.Property.ToString()=“地址”){
字符串lands=“”,orts=“”,plzs=“”;
试一试{
//从单击的属性读取详细的地址数据
abmultivalueaddresses=ev.Person.GetAllAddresses();
PersonalAddress[]值=地址。GetValues();
lands=values[ev.Identifier.Value].Country.ToString();
orts=值[ev.Identifier.Value].City.ToString();
plzs=values[ev.Identifier.Value].Zip.ToString();
}抓住{
Console.WriteLine(“Fehlerhafte地址”);
}
//使用新信息设置文本字段
//调试模式下的iPhone模拟器每次在此崩溃
land.Text=土地;
ort.Text=orts;
plz.Text=plzs;
//关闭模块
NavigationController.DismissViewController(true,null);
}
};
//为“人员”视图设置所选人员
pv.DisplayedPerson=e.Person;
//通过PeoplePicker控制器的导航打开个人视图
PP.PushViewController(pv,真实);
};
//打开人员选择器控制器模块
NavigationController.PresentViewController(PP,true,null);
};


提前谢谢

刚刚发布的MonoTouch 6.0.5有一个类似的补丁。

您能说明您使用的是哪个版本的MonoTouch吗?6.0.5在几个小时前发布(测试版),并修复了类似问题。你能试试吗?太好了:-)我添加了这个作为答案,这样它对其他寻找相同问题的人有用。请将问题标记为已回答,以帮助他们。谢谢你的确认。