2012年4月20日金曜日

UITextFieldの機能いろいろ

以前に、iOSのソフトウェアキーボードを閉じるでも紹介しましたが他にもいろいろな機能があるのでよく使うものを簡単に紹介します。

テキストフィールド内に説明を表示する
textField.placefolder = @"ここに名前を入力してください";

リターンキーの表示を設定する
textField.returnKeyType = UIReturnKeyDone;
typedef enum {
    UIReturnKeyDefault,  // 改行 or return
    UIReturnKeyGo,         // 開く or Go
    UIReturnKeyGoogle,  // 検索 or Search 
    UIReturnKeyJoin,      // 接続 or Join
    UIReturnKeyNext,     // 次へ or Next
    UIReturnKeyRoute,   // 経路 or Route
    UIReturnKeySearch,  // 検索 or Search
    UIReturnKeySend,     // 送信 or Send
    UIReturnKeyYahoo,   // 検索 or Search
    UIReturnKeyDone,     // 完了 or Done
    UIReturnKeyEmergencyCall,  // 緊急電話 or EmergencyCall
} UIReturnKeyType;

キーボードの配列を設定する
textField.keyboardType = UIKeyboardTypeURL;
typedef enum {
    UIKeyboardTypeDefault,
    UIKeyboardTypeASCIICapable,
    UIKeyboardTypeNumbersAndPunctuation,
    UIKeyboardTypeURL,
    UIKeyboardTypeNumberPad,
    UIKeyboardTypePhonePad,
    UIKeyboardTypeNamePhonePad,
    UIKeyboardTypeEmailAddress,
    UIKeyboardTypeDecimalPad,
    UIKeyboardTypeTwitter,
} UIKeyboardType;

テキストフィールド内にクリアボタンを表示する
textField.clearButtonMode = UITextFieldViewModeWhiteEditing;
typedef enum {
    UITextFieldViewModeNever,
    UITextFieldViewModeAlways,
    UITextFieldViewModeUnlessEditing,
    UITextFieldViewModeWhiteEditing
} UITextFieldViewMode


テキストフィールドにフォーカスを当てる
[textField becomeFirstResponder];

リターンキーが押されたことを検知する
-(BOOL)textFieldShouldReturn:(UITextField*)textField
{
    return YES;
}

テキストフィールドの編集が終了したことを検知する
-(void)textFieldDidEndEditing:(UITextField*)textField
{
    ...
}

クリアボタンが押されたことを検知する
-(BOOL)textFieldShouldClear:(UITextField*)textField
{
    return YES;
}

かなり適当ですけどよく使いそうな機能たちです。リターンキーや配列などは実際に設定してみてどれが一番あってるか試してみるといいと思います。
最後の3つはデリゲートの設定をしておく必要があります。
(ヘッダーファイルに UITextFieldDelegate 、ソースファイルに [textField setDelegate:self] みたいなかんじ)




0 件のコメント:

コメントを投稿