UITextFieldクラス

2010. 10. 22
●概要

UITextFieldオブジェクトは、ユーザがリターンボタンを押した際に、ターゲットオブジェクトへのアクションメッセージの送信と、編集可能なテキストを表示を制御します。

通常は検索操作など、ユーザが少し入力したテキストを元に、すぐにアクションを起こす場合にこのクラスを使用します。

基本的なテキスト編集の動作に加え、UITextFieldクラスはテキストフィールド内に追加情報(と追加コマンドターゲットの提供)をオーバーレイ表示することもできます。

例えば検索アイコンやブックマークボタンをカスタムでオーバーレイ表示することもできます。

UITextFieldクラスは、現在のテキストをクリアする組み込みボタンを提供します。

テキストフィールドオブジェクトは、編集操作に関連する通知のデリゲートオブジェクトを利用できます。

このデリゲートを使って、決まった操作をした時にガイダンスを出すようにカスタマイズすることもできます。

デリゲートのサポートするメソッドの詳細は、UITextFieldDelegateプロトコルを参照してください。

・キーボードの管理

ユーザがテキストフィールドをタップすると、テキストフィールドは最初のレスポンダーとなり、自動的にキーボードを表示するようシステムに要求します。

従って、キーボードがユーザインターフェイスの下方を隠すことになるので、見えなくなる部分の配置を考慮しておく必要があります。

テーブルビューのようないくつかのシステムビューは、最初のレスポンダーとして自動的にスクロールを補助します。

最初のレスポンダーがスクロール領域の下部にある場合、リサイズや再配置をして最初のレスポンダーであるスクロールビューが見えるようにする必要があります。

キーボードを閉じるかどうかの選択はアプリケーション側に責任があります。

例えば、ユーザインターフェイスの特定のボタンをユーザがタップすることで、特定のユーザ操作の応答してキーボードを閉じることもできます。

また、キーボードのリターンキーをユーザが押すと、テキストフィールドのデリゲートはキーボードを閉じます。

キーボードを閉じておくには、現在の最初のレスポンダーのテキストフィールドに、resignFirstResponderメッセージを送信します。

その理由は、キーボードを隠し、現在の編集セッションを(デリゲートオブジェクトの許可と共に)終了するためです。

キーボードの外観は、UITextInputTraitsプロトコルが提供するプロパティでカスタマイズすることができます。

テキストフィールドオブジェクトはこのプロトコルを実行し定義されているプロパティをサポートします。

このプロパティで、ASCII、数字、URL、Emailなどのキーボードタイプを使用できます。

また、キーボードでの基本的なテキスト入力の動作として、自動で大文字にしたりテキストの補正をサポートすることもできます。

・キーボードの注意

システムがキーボードの表示/非表示をする時、キーボードの通知をいくつか投じます。

これらの通知にはキーボードの情報を含み、サイズをビューの移動計算などに利用できます。

これらの通知の登録には、いくつかのタイプのキーボードの情報が必要です。

システムの提供するキーボード関連のイベントの通知は以下の通りです。

UIKeyboardWillShowNotification
UIKeyboardDidShowNotification
UIKeyboardWillHideNotification
UIKeyboardDidHideNotification

詳細は各通知やUIWindowクラスを参照してください。

キーボードの表示/非表示に関しては『Text and Web』を参照してください。



●タスク

●テキスト属性へのアクセス

  text    property
  placeholder    property
  font    property
  textColor    property
  textAlignment    property

●テキストフィールドのテキストのサイズ

  adjustsFontSizeToFitWidth    property
  minimumFontSize    property

●編集動作の管理

  editing    property
  clearsOnBeginEditing    property

●ビュー背景の外観の設定

  borderStyle    property
  background    property
  disabledBackground    property

●オーバーレイビューの管理

  clearButtonMode    property
  leftView    property
  leftViewMode    property
  rightView    property
  rightViewMode    property

●デリゲートへのアクセス

  delegate    property

●オーバーライドの描画と位置

– textRectForBounds:
– drawTextInRect:
– placeholderRectForBounds:
– drawPlaceholderInRect:
– borderRectForBounds:
– editingRectForBounds:
– clearButtonRectForBounds:
– leftViewRectForBounds:
– rightViewRectForBounds:

●システム入力ビューへの置換

  inputView    property
  inputAccessoryView    property



●プロパティ

clearsOnBeginEditing

@property(nonatomic) BOOL clearsOnBeginEditing

編集開始時に、テキストフィールドにある古いテキストを削除するかをブール値で示します。

このプロパティをYESに設定した場合、ユーザがテキストフィールドを選択して編集を開始した時にテキストフィールドの以前のテキストはクリアされます。

NOを設定した場合、ユーザがテキストフィールドをタップした場所が挿入点となります。

:このプロパティがYESに設定されている場合でも、その前にtextFieldShouldClear:メソッドでNOを返すことにより、テキストフィールドのデリゲートをオーバーライドすることができます。


delegate

@property(nonatomic, assign) id<UITextFieldDelegate> delegate

レシーバのデリゲートを設定します。

テキストフィールドのデリゲートは、テキストフィールドからの編集に関連付けされたメッセージに応答します。

returnボタンが押された時など、ユーザや特殊なコマンドによってテキストが入力された際に、デリゲートを使用して応答することができます。


text

@property(nonatomic, copy) NSString *text

テキストフィールドのテキストを表します。

この文字列のデフォルトはnilです。



●インスタンスメソッド



●定数



参考文献

UITextField Class Reference






Lifestyle 650 home entertainment system
0 Comments
Leave a comment
管理者にだけ表示を許可する
Top
0 Trackbacks
Top
Calendar
10 | 2017/11 | 12
Sun Mon Tue Wed Thu Fri Sat
- - - 1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 - -
Recent Articles
iTunes


Swift
Categories
Tips
Profile

水月杏香

Author:水月杏香
永遠の初心者プログラマ。

Wish List
WACOM


ARC
Technical Q&A
情報プロパティリストキー
Start Developing iOS Apps Today
BOSE

Lifestyle 650 home entertainment system
Reference
NSApplicationDelegateプロトコル
NSArrayクラス
NSAutoreleasePoolクラス
NSBundleクラス
NSBundle UIKit追加分
NSCalendarクラス
NSCoderクラス
NSCodingプロトコル
NSCopyingプロトコル
NSDataクラス
NSDateクラス
NSDateFormatterクラス
NSDictionaryクラス
NSEntityDescriptionクラス
NSEnumeratorクラス
NSErrorクラス
NSExceptionクラス
NSFetchRequestクラス
NSFileHandleクラス
NSFileManagerクラス
NSIndexPathクラス
NSIndexPath UIKit追加分
NSKeyedArchiverクラス
NSKeyedUnarchiverクラス
NSKeyValueCodingプロトコル
NSLocaleクラス
NSManagedObjectクラス
NSManagedObjectContextクラス
NSManagedObjectModelクラス
NSMutableArrayクラス
NSMutableCopyingプロトコル
NSMutableDictionaryクラス
NSMutableSetクラス
NSNotificationクラス
NSNotificationCenterクラス
NSNullクラス
NSNumberクラス
NSObjectクラス
NSObject UIKit追加分
NSObjectプロトコル
NSPersistentStoreクラス
NSPersistentStoreCoordinatorクラス
NSPredicateクラス
NSPropertyListSerializationクラス
NSRunLoopクラス
NSSetクラス
NSStringクラス
NSString UIKit追加分
NSTimerクラス
NSTimeZoneクラス
NSURLクラス
NSURLProtectionSpaceクラス
NSURLRequestクラス
NSUserDefaultsクラス
NSValueクラス

UIActionSheetクラス
UIActionSheetDelegateプロトコル
UIActivityIndicatorViewクラス
UIAlertViewクラス
UIAlertViewDelegateプロトコル
UIApplicationクラス
UIApplicationDelegateプロトコル
UIBarButtonItemクラス
UIBarItemクラス
UIButtonクラス
UIColorクラス
UIControlクラス
UIDatePickerクラス
UIDeviceクラス
UIEventクラス
UIFontクラス
UIGestureRecognizerクラス
UIImageクラス
UIImageViewクラス
UIKit Function
UILabelクラス
UINavigationControllerクラス
UINavigationItemクラス
UIPickerViewクラス
UIPickerViewDataSourceプロトコル
UIPickerViewDelegateプロトコル
UIPinchGestureRecognizerクラス
UIResponderクラス
UIScreenクラス
UIScrollViewクラス
UISearchBarクラス
UISearchBarDelegateプロトコル
UISegmentedControlクラス
UISliderクラス
UISwipeGestureRecognizerクラス
UISwitchクラス
UITableViewクラス
UITableViewCellクラス
UITableViewControllerクラス
UITableViewDataSourceプロトコル
UITableViewDelegateプロトコル
UITapGestureRecognizerクラス
UITextFieldクラス
UITextFieldDelegateプロトコル
UITextInputTraitsプロトコル
UITextViewクラス
UITextViewDelegateプロトコル
UIToolbarクラス
UITouchクラス
UIViewクラス
UIViewControllerクラス
UIWebViewクラス
UIWebViewDelegateプロトコル
UIWindowクラス

AVAudioPlayerクラス
AVAudioPlayerDelegateプロトコル

CADisplayLinkクラス
CAEAGLLayerクラス
CALayerクラス

CGAffineTransform
CGBitmapContext
CGColor
CGColorSpace
CGContext
CGGeometry
CGImage
CGPath

EAGLContextクラス
EAGLDrawableプロトコル

Foundation Constants
Foundation Data Types
Foundation Functions

MPMediaItemクラス
MPMediaItemArtworkクラス
MPMediaPlaylistクラス
MPMediaPropertyPredicateクラス
MPMediaQueryクラス
MPMusicPlayerControllerクラス

Randomization Services

System Sound Services
Amazon


OpenGL ES
SQLite
Monthly Archives
Recent Comments
Recent TrackBacks
RSS Link
Visitors
QR Code
QR