UITextViewには比較的直感的にキャレット位置を取得できるselectedRangeプロパティがありますが、UITextFieldには数値としての位置情報を持たないselectedTextRangeプロパティしかないため、単純に現在位置を取得したり、指定位置に移動させたりするのも一苦労です。 調べたところ、日本語の情報がないようだったのでメモ。 以下は、StackOverflowから拝借したコードを整理したものです。 //キャレット位置セット - (void)selectTextForInput:(UITextField *)input atRange:(NSRange)range { UITextPosition *start = [input positionFromPosition:[input beginningOfDocument] offset:range.locatio