IOS之简单代理

#import "AppDelegate.h"

//要使用输入框的代理方法

//1.导入代理文字

//2.挂上代理

//3.实现代理的方法

//导入代理的名字

@interface AppDelegate ()<UITextFieldDelegate>


@end


@implementation AppDelegate



- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

    /*

UITextField :->UIControl的子类->UIView的子类

     enable  tag  background color   

     文本输入框 

     text:可以获得 或者改变 输入框的文字内容 

     placeholder:提示文字

     textColor:文字颜色

     fon:文字大小

     textAlignment:对齐方式

     adjustFontSizeToFitWidth:让文字根据宽度适配

     minimumFontSize:设置 文字的最小字号

     delegate:代理

     clearButtonMode:设置清楚按钮 什么时候显示

     UITextFieldViewModeNever,永远不显示

     UITextFieldViewModeWhileEditing,当编辑的时候显示

     UITextFieldViewModeUnlessEditing,不再编辑的时候显示

     UITextFieldViewModeAlways 永远显示

     leftView:左侧视图->输入框左侧视图 

     rightView:左侧视图->输入框左侧视图 

     并不是设置了 左侧右侧视图 就可以显示出来 需要配合使用下面属性

     leftViewMode:设置什么情况下显示左侧视图

     rightViewMode:设置什么情况下显示右侧视图

     imputView: 键盘上面的视图

     imputAccessoryview:键盘区域的视图

     

     输入框的方法 (代理方法)

     开始编辑的时候调用

     - (BOOL)textFieldShouldBeginEditing:(UITextField *)textField;        // return NO to disallow editing.

     - (void)textFieldDidBeginEditing:(UITextField *)textField;           // became first responder

     结束编辑的时候调用

     - (BOOL)textFieldShouldEndEditing:(UITextField *)textField;          // return YES to allow editing to stop and to resign first responder status. NO to disallow the editing session to end

     - (void)textFieldDidEndEditing:(UITextField *)textField;             // may be called if forced even if shouldEndEditing returns NO (e.g. view removed from window) or endEditing:YES called

     当文字内容发生改变的时候调用

     - (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string;   // return NO to not change text

     点击清除按钮的时候调用

     - (BOOL)textFieldShouldClear:(UITextField *)textField;               // called when clear button pressed. return NO to ignore (no notifications)

     点击return键的时候调用

     - (BOOL)textFieldShouldReturn:(UITextField *)textField;              // called when 'return' key pressed. return NO to ignore.

     

     

     专为输入框准备的响应事件

     UIControlEventEditingDidBegin                                   = 1 << 16,     // UITextField

     UIControlEventEditingChanged                                    = 1 << 17,

     UIControlEventEditingDidEnd                                     = 1 << 18,

     UIControlEventEditingDidEndOnExit                               = 1 << 19,     // 'return key' ending editing

     borderstyle:输入框的样式

     UITextBorderStyleNone, 没有样式

     UITextBorderStyleLine, 黑线边框

     UITextBorderStyleBezel,黑线阴影

     UITextBorderStyleRoundedRect 圆角

     */

    /*

    注意点:

     1、如果想使用代理方法 必须先导入代理

     2、如果代理方法没有触发  看是否挂上了代理

     在使用左右侧视图的时候 要配合左右视图的model来使用

     

     

     */

    /*

     keyboardType:键盘的样式

     UIKeyboardTypeDefault,                // Default type for the current input method.

     UIKeyboardTypeASCIICapable,           // Displays a keyboard which can enter ASCII characters, non-ASCII keyboards remain active

     

     ✮✮✮✮✮数字符号

     UIKeyboardTypeNumbersAndPunctuation,  // Numbers and assorted punctuation.

     

     

     UIKeyboardTypeURL,                    // A type optimized for URL entry (shows . / .com prominently).

     

     UIKeyboardTypeNumberPad,              // A number pad (0-9). Suitable for PIN entry.

     UIKeyboardTypePhonePad,               // A phone pad (1-9, *, 0, #, with letters under the numbers).

              ,           // A type optimized for entering a person's name or phone number.

     UIKeyboardTypeEmailAddress,  邮箱地址类型         // A type optimized for multiple email address entry (shows space @ . prominently).

     UIKeyboardTypeDecimalPad NS_ENUM_AVAILABLE_IOS(4_1),   // A number pad with a decimal point.

     UIKeyboardTypeTwitter NS_ENUM_AVAILABLE_IOS(5_0),      // A type optimized for twitter text entry (easy access to @ #)

     UIKeyboardTypeWebSearch NS_ENUM_AVAILABLE_IOS(7_0),网页搜索    // A default keyboard type with URL-oriented addition (shows space . prominently).

     

     UIKeyboardTypeAlphabet = UIKeyboardTypeASCIICapable, // Deprecated

     */

    [self.window makeKeyAndVisible];

    UITextField *accTextField=[[UITextField alloc]initWithFrame:CGRectMake(10, 40, [UIScreen mainScreen].bounds.size.width-20, 40)];

    accTextField.backgroundColor=[UIColor redColor];

    accTextField.borderStyle=UITextBorderStyleRoundedRect;

    //提示文字

    accTextField.placeholder=@"请输入账号";

    //清除按钮

    accTextField.clearButtonMode=UITextFieldViewModeWhileEditing;

    UIImageView *leftImageView=[[UIImageView alloc]initWithFrame:CGRectMake(0, 0, 40, 40)];

    leftImageView.image=[UIImage imageNamed:@"1.jpg"];

    accTextField.leftView=leftImageView;

    accTextField.leftViewMode= UITextFieldViewModeUnlessEditing;

    UIView *inputV=[[UIView alloc]initWithFrame:CGRectMake(0, 0, CGRectGetWidth([UIScreen mainScreen].bounds), 40)];

    inputV.backgroundColor=[UIColor lightGrayColor];

//    accTextField.inputView=inputV;

//    accTextField.inputAccessoryView=inputV;

    //想使用代理方法 必须挂上代理

    accTextField.delegate=self;

    accTextField.tag=101;

    

    

    [self.window addSubview:accTextField];

    

    return YES;

}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值