UI02_UIButton和UITextField

声明属性

@interface AppDelegate ()
@property(nonatomic,retain)UITextField *textField;
@property (nonatomic,assign)BOOL ischeck;
@property(nonatomic,retain)UILabel *label;
@end

实现部分(对其释放)

-(void)dealloc
{
    [_window release];
    [_textField release];//定义属性时会对其加一
    [super dealloc];
    [_label release];
}

通过Button点击方法来获取textField的内容

(1)对Button进行设置

   UIButton *button=[UIButton buttonithType:
   UIButtonTypeSystem];
   button.frame=CGRectMake(200,300,100,30);
   [self.window addSubview:button];
   button.layer.borderWidth=1;
   button,layer,cornerRadius=10;
   [button setTitle:@"测试"forState:UIControlStateNormal];
   [button addTarget:self action:@selector(clickButton:)
   forControlEvents:UIControlEventTouchUpInside];

这个clickButton中点击触发接受textField的内容
(2)对textField进行设置,上面已经将他设置成属性下面直接用
   self.textField=[[UITextField alloc]
   initWithFrame:CGRectMake(200, 100, 100, 40)];
   self.textField.backgroundColor=[UIColor redColor];
   [self.window addSubview:self.textField];  
   self.textField.layer.borderWidth=1;
   self.textField.layer.cornerRadius=10;
   [_textField release];
   //输入进去之后是圆点
   self.textField.secureTextEntry=YES;
   //给textField添加addTarget-action方法
   [self.textField add target:self  action:@selector(changeValue:)forControlEvents:UIControlEventEditingChanged];

(3)创建一个按钮,用来textField切换状态
UIButton *changePocBuuton=[UIButton buttonWithType:UIBuutonTypeCustom];
changePocButton.frame=CGRectMake(100,100,50,50);
[changePocButton addTarget:self action:@selector(click:)forControlEvents:UIControlEventTouchUpInside];
[changePocButton setImage:[UIImage imageNamed:@"check.png"]forState:UIControlStateNormal];
[self.window addSubview:changePocButton];
self.ischeck=YES;

(4)创建一个Label
    self.label=[[UILabel alloc]initWithFrame:CGRectMake(100, 400, 100, 40)]; 
    self.label.backgroundColor=[UIColor blueColor];
    [self.window addSubview:self.label];
    [_label release];
(5)针对(1)的触发方法clickButton
呈现效果是:打印textField的内容
-(void)click1:(UIButton *)button{
     NSLog(@"%@",self.textField.text);
}
//能将两者联系的方式:把textField定义成属性;用tag值进行寻找
(6)对应(2)的触发方法
呈现效果是:根据textField输入文本的长度判断这个文本长度是否安全,然后用另一个label实现
-(void)changeValue:(UITextField *)textField
{
NSLog(@"%@",textField.text);//字符串长度用length
if(textField.text.length>5)
    {
    self.label.text=@"密码长度安全";
    }else{
    self.label.text=@"密码长度危险";
    }
    NSLog(@"%@",self.label.text);
    //文本圆点的转换
self.textField.secureTextEntry=!self.textField.secureTextEntry;
}
(6)针对(3)触发方法
呈现效果是:根据图片选择是让textField是密码模式还是文本形式
-(void)click:(UIButton *)button
{
  if(self.ischeck)
  {
  [button setImage:[UIImage imageNamed:@"check.png"] forState:UIControlStateCustom];
  }else{
  [button setImage:[UIImage imageNamed:@"checked.png"]forState:UIControlStateCustom];
  }
self.ischeck=!self.ischeck;
self.textField.secureTextEntry=!self.textField.secureTextEntry;
}
(7)通过继承的方式扩展类
   --创建一个MyButton,在MyButton里创建一个属性
     @property(nonatomic,copy)NSString *buttonName;
   --在AppDelegate.h里引头文件(关键)
   --在.m里写实现
     创建一个MyButton的对象
     MyButton *myButton=[MyButton buttonWithType:UIButtonTypeSystem];
     myButton.frame=CGRectMake(50,50,100,30);
     [self.window addSubview:myButton];
     myButton.buttonName=@"珊珊";
     [myButton setTitle:@"MyButton"forState:UIControlStateNormal];
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值