有誰知道如何更改UIActivityViewController的標準取消按鈕文本值? 默認情況下它是「取消」。但我想改變它,例如用不同的語言。UIActivityViewController - 如何更改取消按鈕文本
怎麼辦?謝謝!
有誰知道如何更改UIActivityViewController的標準取消按鈕文本值? 默認情況下它是「取消」。但我想改變它,例如用不同的語言。UIActivityViewController - 如何更改取消按鈕文本
怎麼辦?謝謝!
你不能。但是,取消按鈕是默認本地化的。 順便提一下,如果這是你想要的,你可以創建自己的控制器。你可以用UIActivity
對象填充它。請注意,當您查看該課程時,當文檔討論activityController
時,它是任何UIViewController
。
更新:下面的代碼只適用於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];
這適用於iOS 7,但在iOS 8中停止工作。 – frin 2014-09-26 07:07:09
是的,因爲它現在看起來像是UIAlertAction。它沒有外觀代理 – cocoapriest 2014-12-20 15:50:43
正如其他人所指出的,該按鈕被系統本地化的,你不能改變它。至少在iOS 11上。但是我還在爲之苦苦掙扎,即使在更改系統語言之後,該按鈕仍保留其標題Cancel
。
這篇文章幫助我成功地本地化取消份額片的按鈕和一個在UIDatePicker
countdown timer mode是抵制以前的系統國產化的嘗試,以及工作:Why UIActivityViewController doesn't display localized cancel string?
添加此行到您的info.plist
:
我不想創建自己的控制器(但可能需要)。只是想改變「取消」按鈕的文本,正如你所說,可能這是不可能的:(另外當我改變本地化設置 - 「取消」不會改變,它仍然是「取消」 – Sid 2013-03-08 18:19:36
現在我看到我需要研究更多關於...國際化,而不是關於改變文字UIActivityViewController。Thx。 – Sid 2013-03-08 19:11:14
而這是一個巨大的主題... :) – Rikkles 2013-03-09 09:36:50