iOS学习随笔-UIView的有效范围

刚开始进着手写项目,有好多东西不会,随手瞎写点随笔吧


今天想写一个简单的登陆界面,包括说明账户、密码提示信息的UILable,两个输入的UITextFiled,一个submit的UIButton和最下面的公司信息的UILable,就很简单。

在写代码的过程中选用了,将逻辑相似的组建加入同一个uiview中,便于管理与移动(虽然后来学长说直接加self里就好...)。

然后在实现时遇到了问题,发现UITextFiled没发选中没发打字,经过研究后发现时这样的:

当一些子控件加入到一个UIView进行管理时,只有不超出UIView的范围的部分有效。虽然超出部分可以显示(只要不超出屏幕范围),但无法被响应。


在这个空间中,蓝色部分代表UIView的有效范围,上面的TF可以被响应输入数据,但后面的清空按钮就无法被响应,下面的TF都可以被响应。

另,view重合好像不影响响应的问题(待验证);


_userView = [[UIView alloc]initWithFrame:CGRectMake(0,0,200,SCREEN_WIDTH)];
    _userView.backgroundColor = [UIColor blueColor];
    UILabel *accountA = [[UILabel alloc]initWithFrame:CGRectMake(0, 70, SCREEN_WIDTH-350, 44)];
    accountA.text = @"账户";
    //[_userView addSubview:accountA];
    _userAccountTF = [[UITextField alloc] initWithFrame:CGRectMake(0, 70, SCREEN_WIDTH, 44)];
    _userAccountTF.font = [UIFont systemFontOfSize:20];//字体大小相关
    _userAccountTF.placeholder = NSLocalizedString(@"input your Account", nil); //显示提示文字 NSLocalizedString:可转换字符
    //_userAccountTF.borderStyle = UITextBorderStyleLine;   设置输入框样式
    _userAccountTF.clearButtonMode = UITextFieldViewModeWhileEditing;           //显示清空按钮
    _userAccountTF.keyboardType = UIKeyboardTypeAlphabet;
    _userAccountTF.textAlignment = NSTextAlignmentCenter;			//使输入的文本居中
    [_userView addSubview:_userAccountTF];
    //[self.view addSubview:_userAccountTF];
    NSLog(@"addSubview:_userView");
    [self.view addSubview:_userView];
    
    
    
    //_psdView = [[UIView alloc]initWithFrame:CGRectMake(SCREEN_WIDTH/2-100,170,SCREEN_WIDTH-30-70,44)];
    _psdView = [[UIView alloc]initWithFrame:CGRectMake(0,100,SCREEN_WIDTH,SCREEN_WIDTH)];
    _psdView.backgroundColor = [UIColor blueColor];
    UILabel *accountB = [[UILabel alloc]initWithFrame:CGRectMake(0, 70, SCREEN_WIDTH-350, 44)];
    accountB.text = @"密码";
    [_psdView addSubview:accountB];
    _passwordTF = [[UITextField alloc]initWithFrame:CGRectMake(0, 170, SCREEN_WIDTH, 44)];
    _passwordTF.font = [UIFont systemFontOfSize:20];
    _passwordTF.placeholder = NSLocalizedString(@"input your Password", nil);
    _passwordTF.clearButtonMode = UITextFieldViewModeWhileEditing;
    _passwordTF.keyboardType = UIKeyboardTypeNumberPad;
    _passwordTF.textAlignment = NSTextAlignmentCenter;
    [_psdView addSubview:_passwordTF];
    //[self.view addSubview:_passwordTF];
    NSLog(@"addSubview:_psdView");
    [self.view addSubview:_psdView];

以上为部分源码。




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值