でワーニングが出てしまうので作り直しました。
@interface UITextView (extend)
// キャレット位置の設定
typedef enum {
UICTextViewCaretPositionHead = 0, // 先頭
UICTextViewCaretPositionTail // 後尾
}UICTextViewCaretPositionType;
- (void)setCaretPosition:(UICTextViewCaretPositionType)_caretPositionType;
@end
@implementation UITextView (extend)
- (void)setCaretPosition:(UICTextViewCaretPositionType)_caretPositionType
{
// キャレットを移動する為の選択範囲情報
NSArray *rangesAtCaretPosition = [NSArray arrayWithObjects:
[NSValue valueWithRange:(NSRange){0, 0}], // 先頭
[NSValue valueWithRange:(NSRange){[self.text length], 0}], // 後尾
nil
];
// 引数チェック
if ([rangesAtCaretPosition count] <= _caretPositionType) {
@throw [NSException exceptionWithName:@"invalid argument error" reason:@"out of range:_caretPositionType" userInfo:nil];
}
// キャレットを移動
NSRange range;
[[rangesAtCaretPosition objectAtIndex:_caretPositionType] getValue:&range];
self.selectedRange = range;
}
@end
NSValueを使ってNSArrayに保存するように修正しまいた。
0 件のコメント :
コメントを投稿