我创建了一个简单的EntryElement
“eNote”并将其添加到Section
。超级简单。
Section secNote = new Section ("Notes");
eNote.AutocapitalizationType = UITextAutocapitalizationType.None;
eNote.AutocorrectionType = UITextAutocorrectionType.No;
eNote.KeyboardType = UIKeyboardType.ASCIICapable;
secNote.Add (eNote);
我们输入这样的句子:
然后,当我尝试通过点击“U”之前在“Unity”之前添加“I Like”文本时,输入第一个字母,但其余部分放在文本的末尾。结果是我们无法编辑文本。
答案 0 :(得分:2)
简短的回答是,这是一个错误,应该与Xamarin
一起提交但是我确实找到了解决方法。使用程序集浏览器,您可以“借用”EntryElement的现有实现,并将Value属性更改为以下内容。
public string Value
{
get
{
return this.val;
}
set
{
this.val = value;
if (this.entry != null && value != null && !value.Equals (this.entry.Text))
{
this.entry.Text = value;
}
}
}
快乐黑客!
答案 1 :(得分:1)
这是由this change引起的回归。如果你从source(github)构建MonoTouch.Dialog,那么你可以恢复 4cffe144f89fc9fbfe032d56e67a8583c2d641bf 提交。
同样的变化也会产生其他副作用,例如: #4736,在您填写的bug report旁边。您应该检查这是否会影响您的应用程序(或不是),以查看变通方法是否优于还原。