私の実験では、ペーストボードにテキストを貼り付けています。私はプログラムでテキストを追加するためにボタンを使用しています。
#import <MobileCoreServices/MobileCoreServices.h>
- (IBAction)setPasteboardText:(id)sender
{
UIPasteboard *pb = [UIPasteboard generalPasteboard];
NSString *text = @"東京京都大阪";
// Works, but generates an incompatible pointer warning
[pb setValue:text forPasteboardType:kUTTypeText];
// Puts generic item (not text type), can't be pasted into a text field
[pb setValue:text forPasteboardType:(NSString *)kUTTypeItem];
// Works, even with non-ASCII text
// I would say this is the best way to do it with unknown text
[pb setValue:text forPasteboardType:(NSString *)kUTTypeText];
// Works without warning
// This would be my preferred method with UTF-8 text
[pb setValue:text forPasteboardType:(NSString *)kUTTypeUTF8PlainText];
// Works without warning, even with Japanese characters
[pb setValue:text forPasteboardType:@"public.plain-text"];
// Works without warning, even with Japanese characters
[pb setValue:text forPasteboardType:@"public.text"];
// Check contents and content type of pasteboard
NSLog(@"%@", [pb items]);
}
テキストフィールドに内容を貼り付けて確認し、テキストの内容を毎回変更して以前の貼り付けを再使用していないことを確認しました。
- [UIPasteboard setString:]メソッドを使用する代わりにこれを行う理由を聞かせてもいいですか?また、「何も起こらない」とはどういう意味ですか?正確に何を期待していたのですか?どのようにこれを決定していますか? –