有人知道如何更改UIActivityViewController标准取消按钮的文本值吗? 默认情况下为"Cancel"。但我想将其更改为不同语言。
怎么做呢?谢谢!
有人知道如何更改UIActivityViewController标准取消按钮的文本值吗? 默认情况下为"Cancel"。但我想将其更改为不同语言。
怎么做呢?谢谢!
更新:下面的代码只适用于iOS7。
像Rikkles所说的,您不需要自定义文本来使其本地化。但以防万一有人有充分理由这样做,这是代码:
NSArray *activityItems = @[@"Test"];
UIActivityViewController *activityController = [[UIActivityViewController alloc] initWithActivityItems:activityItems applicationActivities:nil];
NSAttributedString *as = [[NSAttributedString alloc] initWithString:@"Custom Text" attributes:@{NSForegroundColorAttributeName:[UIColor greenColor]}];
[[UIButton appearanceWhenContainedIn:[UIActivityViewController class], nil] setAttributedTitle:as forState:UIControlStateNormal];
[self presentViewController:activityController animated:YES completion:nil];
UIActivity
对象填充它。请注意,当您查看该类时,文档中提到的activityController
是任何UIViewController
。正如其他人所指出的,按钮是由系统本地化的,您无法更改它。至少在iOS 11上是这样的。但我也遇到了这个问题,即使在更改系统语言后,按钮仍保持其“取消”标题。
这篇文章帮助我成功地将共享表的“取消”按钮本地化,并在倒计时模式中使用了UIDatePicker
,该模式之前也曾抵制过系统本地化尝试:为什么UIActivityViewController不显示本地化的取消字符串?
将此行添加到您的info.plist
中: