查看Apple开发人员参考,我发现PreferredLocalizations
可用PreferredLanguages
:
但是,NSBundle
似乎没有实现“PreferredLocalizations”。我错过了什么吗?我是using MonoTouch.Foundation
答案 0 :(得分:1)
你是对的,MonoTouch目前缺少它。获得它的最好和最快的方法是填写bug report并要求它。
在许多情况下(如此),很容易提供适用于现有MonoTouch版本的解决方法。
请注意,您的链接适用于OSX,而不是iOS,某些类型(包括NSBundle
)在两者之间存在一些差异(但在preferredLocalizations
的情况下,它存在于两个操作系统中)。
<强>更新强>
我为MonoTouch的下一个版本(将是5.3.5版)添加了这个版本。与此同时,这是一个解决方法:
using MonoTouch.ObjCRuntime;
...
var bh = NSBundle.MainBundle.Handle;
var sel = Selector.GetHandle ("preferredLocalizations");
var pl = NSArray.StringArrayFromHandle (Messaging.IntPtr_objc_msgSend (bh, sel));
Console.WriteLine (pl [0]); // en