Xamarin.iOS-操作表行号

时间:2018-09-10 12:58:00

标签: xamarin xamarin.ios uikit uiappearance

我有这种情况:我的操作表具有不同的文本大小,例如在this question中,但是尝试从xamarin iOS访问此API,我找不到属性:

UILabel.appearance(whenContainedInInstancesOf: [UIAlertController.self]).numberOfLines = 2

在{SushiHangover的帮助下阅读this question,Xamarin有许多隐藏的API,通过代码,我想我可以实现所需的行为。

因此,在Xamarin.iOS中,如何强制我的操作表的选项包含两行或更多行文本?我不熟悉iOS内部或Objective-C。

我试图找到此属性的属性名称,并尝试使用Sushi的解决方案,但是没有运气。

1 个答案:

答案 0 :(得分:0)

我找到了解决方法:

使用SushiHangover的答案,我可以使用以下代码实现所需的行为:

var styleHandle = IosUtils.GetAppearanceEx(Class.GetHandle("UILabel"), typeof(UIAlertController));
        IosUtils.void_objc_msgSend_IntPtr(styleHandle, Selector.GetHandle("setNumberOfLines:"), ((NSNumber)2).Handle);

我不确定是否是最好的解决方案,但是我可以做我需要的事情。