小编IRD*_*IRD的帖子

如何在iOS中以编程方式设置宽高比限制?

我已经为我的视图控制器使用了自动布局.我已经在约束中设置了V和H位置,但我想知道当它变为5s,6和6 Plus时如何增加我的按钮大小.这是我为登录按钮添加约束的方式:

NSArray *btncon_V=[NSLayoutConstraint constraintsWithVisualFormat:@"V:[btnLogin(40)]" options:0 metrics:nil views:viewsDictionary];
[btnLogin addConstraints:btncon_V];

NSArray *btncon_POS_H=[NSLayoutConstraint constraintsWithVisualFormat:@"H:|-100-[btnLogin]-100-|" options:0 metrics:nil views:viewsDictionary];
[self.view addConstraints:btncon_POS_H];


NSArray *btncon_POS_V=[NSLayoutConstraint constraintsWithVisualFormat:@"V:|-70-[Title]-130-[lblFirst]-0-[lblSecond]-20-[textusername]-10-[txtpassword]-10-[btnLogin]" options:0 metrics:nil views:viewsDictionary];

[self.view addConstraints:btncon_POS_V];
Run Code Online (Sandbox Code Playgroud)

但我的问题是,虽然它管理左侧和右侧间隙,但由于高度固定,它在iPhone 6和6 Plus中得到了拉伸.如何根据屏幕尺寸增加尺寸?我认为这可能是宽高比,但我如何在代码中设置宽高比约束?

constraints ios autolayout nslayoutconstraint

64
推荐指数
7
解决办法
7万
查看次数

inputAccessoryView 出现键盘时不调用

我已经添加InputAccessoryView到我的键盘消失。它很好用。但在某些情况下ViewController它没有出现。即使那个方法没有调用。

我有一个按钮。当我点击它时,我的文本字段会自动成为第一响应者。(单击该按钮时,光标聚焦在 textField 上)键盘即将出现,但输入附件视图未出现。

我正在 iOS 8.2 设备上测试这个。这是我的代码

viewDidload

 // for search------------------
UIView *srchPadView=[[UIView alloc]initWithFrame:CGRectMake(0, 0, 20, 30)];
[srchtextbox setLeftView:srchPadView];
[srchtextbox setLeftViewMode:UITextFieldViewModeAlways];
srchtextbox.attributedPlaceholder=[[NSAttributedString alloc] initWithString:alertStrings.strSearch attributes:@{NSForegroundColorAttributeName: [UIColor colorWithRed:1 green:1 blue:1 alpha:0.6]}];
[srchtextbox setTextColor:[UIColor whiteColor]];
srchtextbox.delegate=self;

[[NSNotificationCenter defaultCenter]
 addObserver:self
 selector:@selector(textFieldTextDidChangeOneCI:)
 name:UITextFieldTextDidChangeNotification
 object:srchtextbox];
Run Code Online (Sandbox Code Playgroud)

在文本字段更改方法中

-(void)textFieldTextDidChangeOneCI:(NSNotification *)notification
 {

    isSearching=YES;
    [NSObject cancelPreviousPerformRequestsWithTarget:self
                                         selector:@selector(getSongs)
                                           object:nil];

    loading=YES;
    [mainactivityindicator startAnimating];
    songsArray=[[NSMutableArray alloc]init];
    songstable.hidden=YES;
    startRec=0;

    [self performSelectorInBackground:@selector(getSongs) withObject:nil];


}
Run Code Online (Sandbox Code Playgroud)

然后

- (UIView *)inputAccessoryView {
if (!inputAccessoryView) {
    CGRect accessFrame = CGRectMake(0.0, 0.0, 320, …
Run Code Online (Sandbox Code Playgroud)

uitextfield ios uitextfielddelegate inputaccessoryview

1
推荐指数
1
解决办法
1709
查看次数