如何以编程方式更新视图的高度



我面临的一个与自动布局有关的问题。我首先通过自动布局将包含图像视图的视图高度设置为零。但是,如果调用某个函数,我希望将该高度更新为常量值,但我的视图高度没有得到更新。这是代码,我在函数内以编程方式更新了高度,但它不起作用。

let heightContraint = NSLayoutConstraint(item: businessImageView, attribute: .height, relatedBy: .equal, toItem: nil, attribute: .notAnAttribute, multiplier: 1, constant: 40)
businessImageView.addConstraint(heightContraint) 

首先创建高度约束的 IBOutlet。

您只需要更改约束constant属性。例如:

self.consTblFilterHeight.constant = 100.0
self.view.layoutIfNeeded() 

self.view替换为要更改高度的视图的父视图。

创建约束出口,然后像这样设置:

  • self.heightConstraintOutlet.constant = newHeightValue

businessImageView.addConstraint(heightContraint)不是更新约束的代码。它增加了一个约束。
为了更新父视图(具有图像(的高度,您需要更新业务图像视图的高度约束的常量。

businessImageView.heightConstraint.constant = 40
self.view.layoutIfNeeded()

方法

  • 激活约束
  • 更改常量值

法典

heightConstraint.isActive = true 
heightConstraint.constant = 20

//让我们在这里检测屏幕的高度

 int height = [UIScreen mainScreen].bounds.size.height;
    int width = [UIS

creen mainScreen].bounds.size.width;

// share the news

 NSString *message = [[NSString alloc]initWithFormat:@"This screen is nn%i pixels high andn%i pixels wide", height, width];
    NSLog(@"%@", message);

相关内容

  • 没有找到相关文章

最新更新