首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

ObjC -如何显示/隐藏具有比例高度约束的视图?

ObjC是Objective-C的缩写,是一种面向对象的编程语言,常用于iOS和macOS应用程序的开发。在ObjC中,可以使用Auto Layout来管理视图的布局和约束。

要显示/隐藏具有比例高度约束的视图,可以通过更改视图的约束来实现。以下是一种常见的方法:

  1. 首先,创建一个高度约束,并将其与视图相关联。例如,使用NSLayoutConstraint类创建一个高度约束对象,并将其添加到视图上:
代码语言:txt
复制
NSLayoutConstraint *heightConstraint = [NSLayoutConstraint constraintWithItem:view
                                                                    attribute:NSLayoutAttributeHeight
                                                                    relatedBy:NSLayoutRelationEqual
                                                                       toItem:nil
                                                                    attribute:NSLayoutAttributeNotAnAttribute
                                                                   multiplier:0.5
                                                                     constant:0];
[view addConstraint:heightConstraint];

上述代码创建了一个高度约束,将视图的高度设置为其父视图高度的一半。

  1. 要显示视图,可以将约束的constant属性设置为非零值:
代码语言:txt
复制
heightConstraint.constant = 100; // 设置高度为100
[view layoutIfNeeded]; // 更新布局

上述代码将视图的高度设置为100,并通过调用layoutIfNeeded方法来更新布局。

  1. 要隐藏视图,可以将约束的constant属性设置为零:
代码语言:txt
复制
heightConstraint.constant = 0; // 设置高度为0,即隐藏视图
[view layoutIfNeeded]; // 更新布局

上述代码将视图的高度设置为0,从而隐藏了视图,并通过调用layoutIfNeeded方法来更新布局。

这种方法适用于具有比例高度约束的视图。通过更改约束的constant属性,可以动态地显示或隐藏视图。

腾讯云相关产品和产品介绍链接地址:

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

TableView优化之高度缓存

这样的话每个不同种类cell上视图是不相同,在自动计算高度时候对cell布局有很高要求,所以我们一定要保证我们计算用cell与展示用cell是同一种cell。...这个cell是为了干什么呢,就是为了计算高度,那么我每次计算高度时候只要有这么一个cell就好了,不要去初始化太多根本不用于显示只用于计算cell。...当为YES时,则我们设置约束是无效。因为后续我们要手动添加一个约束辅助我们计算,所以这里我们将其设为NO。 然后将计算标识符置真,标识这个cell只参与计算高度,不负责展示。...1.先拿到cell宽度 2.根据辅助视图样式校正宽度 如果有自定义辅助视图,则按照自定义辅助视图宽度去校正,如果没有按照系统辅助视图样式去校正宽度,然后根据宽度计算高度。...这里是添加约束写法,先添加一个宽度约束,然后让系统根据宽度约束自动计算高度,接着去掉我们添加约束。 4.如果根据约束计算结果错误,则以sizeThatFits去计算高度

2.4K30

iOS开发常用之UI模糊效果、自动版式

使用DEMO 视图居中显示,子视图含边距,视图等距离摆放,计算ScrollView内容。 Classy - Classy是一个能与UIKit无缝结合stylesheet(样式)系统。...ClassyLiveLayout - ClassyLiveLayout通过结合Classy stylesheets与Masonry一起使用,能够在运行模拟器中微调自动布局约束实时显示效果工具,砌体...Auto-Layout-Showcase - swift,AutoLayout进阶演示,宽高比约束比例约束,不等约束,视差约束,低优先级约束等高级用法,无需写码即可进行复杂页面布局,Demo还动态模拟了各屏幕下效果...来自百度知道iOS小组内部分享。 UIView-FDCollapsibleConstraints - 一个AutoLayout辅助工具,最优雅方式解决自动布局中子查看动态显示隐藏问题。...当前视图隐藏时候也隐藏其autolayoutNSLayoutAttribute - 当前隐藏时候也隐藏其autolayoutNSLayoutAttribute,从而不用大量代码工作。

1.6K30
  • iOS图片浏览器(功能强大性能优越)

    索引:(简书不支持页内跳转很尴尬) 一、组件框架整体设计 二、组件中如何隐藏属性和方法 三、拖拽动效算法优化 四、分页间距算法优化 五、内存优化 六、预下载和任务同步 七、屏幕旋转UI适配 一、组件框架整体设计...二、组件中如何隐藏属性和方法 在做一个组件时候,我们往往思考着向用户隐藏某些细节实现,一方面是为了避免用户无意更改,一方面是为了简化 API 使其看起来更清爽。...对于方法隐藏,组件中不将方法暴露在.h里面,只写在.m里面,然后组件其他文件通过下objc_msgSend方法处理,比如随便截取一段代码: YBImageBrowserModelScaleImageSuccessBlock...但是,有个容易忽略问题,在拖动时候我们希望看到效果是图片跟随手指移动并且缩小,上图左右两种状态下箭头指向正是手指拖动触摸点(理想状态),若写一个移动和缩放比例变化之间是线性动画,手指触摸点会是这种理想状态么...类重写约束

    2.3K70

    iOS 仿支付宝银行卡界面(支持Swift和OC)

    为了实现相应功能,仿照支付宝银行卡卡包开发出相应页面,页面长这个样子: 二:说明目录 创建钱包视图容器WalletView 初始化WalletView并加载钱包头部视图walletHeader 在钱包视图中重新加载卡片视图...在钱包视图中实现添加卡片方法 在钱包视图中实现卡片展示和隐藏回调方法 创建卡片视图ColoredCardView继承于CardView 在CardView中实现点击手势展示隐藏卡片 导入项目使用介绍...在钱包视图中实现卡片展示和隐藏回调方法 在钱包视图中实现卡片展示和隐藏回调方法,在展示状态下,需要隐藏掉添加卡片按钮,禁止继续添加卡片,并且显示卡片详细设置内容和删除按钮。...// 卡片视图 @objc var bankCardView: UIView!...导入项目使用介绍 最后介绍一下该如何在项目中导入该功能,下载Demo,将Demo中FBYBankCard.framework文件和ColoredCardView.swift文件导入项目中,在需要加载页面中直接引用即可

    1.4K20

    iOS xib 实现兄弟控件N等分且宽高比例是1:N

    引言 本文为 iOS视图约束专题第三篇:xib上使用自动布局教程 第一篇:【1、Masonry以动画形式更新约束 2、利用dividedBy进行九宫格布局3、Masonry约束宽高比例子demo】...https://blog.csdn.net/z929118967/article/details/106357456 第二篇:UICollectionView自适应案例详解:【商品详情页】(原理:按照图片原宽高比例进行显示图片全部内容...X Y ,以及视图之间间距之后 接下来关键步骤是设置视图高度等于视图宽度 1.1、 设置视图高度等于视图宽度(宽度可以由自动布局自动确定) ?...II、iOS 父子控件高度成一定比例关系实现 ---- 例子:这种情况通常运用于 父亲控件高度依赖于子控件高度 ?.../z929118967/article/details/106357456 第二篇:UICollectionView自适应案例详解:【商品详情页】(核心原理:Masonry按照图片原宽高比例进行显示图片全部内容

    98340

    将模型添加到场景中 - 在您环境中显示3D内容

    在本教程中,我们将学习如何检索模型并使用按钮触发器将其呈现在场景中。一旦显示,我们将隐藏焦点方块。...调整大小以填充整个视图控制器。 约束 然后,单击Storyboard编辑器左下角第四个图标,将新约束添加到场景视图中。定义约束以确保您用户界面适应不同屏幕尺寸或设备方向。...焦点方块隐藏/显示选项 当我们在屏幕上显示模型时,我们仍然看到焦点方块干扰了我们漂亮模型。如果我们在安置后隐藏它,你怎么说?...在FocusSquare类中,让我们创建一个函数来为焦点方块表示设置动画。将隐藏显示两种情况,因此隐藏值是布尔值。然后我们声明一个SCNAction用于淡入淡出,淡出用于隐藏和淡入显示。...我们实际上没有选择,因为节点具有isHidden属性,并且不显示一个for。好吧,不是我所知道。 那么,让我们来看看这两个场景。

    5.5K20

    Ios常用第三方框架(一)

    使用DEMO 视图居中显示、子视图含边距、视图等距离摆放、计算ScrollViewcontentsize。...Auto-Layout-Showcase - swift,AutoLayout 进阶 Demo,宽高比约束比例约束、不等约束、视差约束、低优先级约束等高级用法,无需写码即可进行复杂页面布局,Demo...UIView-FDCollapsibleConstraints - 一个AutoLayout辅助工具,最优雅方式解决自动布局中子View动态显示隐藏问题。...当view隐藏时候也隐藏其autolayoutNSLayoutAttribute - 当view隐藏时候也隐藏其autolayoutNSLayoutAttribute,从而不用大量代码工作。...TQRichTextView - 用于做富文本视图控件显示,用于即时通讯表情显示,以及资源评论富文本显示

    5.4K31

    深入详解iOS适配技术

    周围四条虚线分别代表子控件距离父控件上、下、左、右之间距离关系/或者叫约束关系,周围四条虚线所包围小方块代表子视图,小方块内部两条带双向箭头线分别代表子控件宽度和高度。...具有相同意义。...width按比例调整,高度固定,右边距固定,上边距固定,下边距固定(下图xib中预览效果与实际效果有差,实际效果是view上边距不变)(这种约束方式相当于上下间距固定,高度固定,那么父控件高度缩放时候就会产生冲突...),目的是让视图在iPhone6P和iPhone6SP上显示更好看一些。...换句话说,在sizeClass为W Regular H Any(宽度正常 高度任意)下布局控件,不管高度如何,只要宽度正常就会显示出来。 未完待续...

    8.5K70

    【Android从零单排系列三十四】《Android布局介绍——ConstraintLayout》

    相较于其他布局容器,ConstraintLayout具有以下特点: 灵活性:ConstraintLayout支持通过设置约束条件来定义视图之间相对位置和尺寸。...你可以通过拖拽和调整视图边界、连接线和约束条件来轻松创建和修改布局。 ConstraintLayout工作原理是通过设置视图之间宽度、高度和相对位置约束条件来实现。...完善布局:根据设计需求,继续设置其他视图约束条件,以达到期望布局效果。可以使用app:layout_constraint...属性来设置各种约束条件,如边界对齐、居中对齐、权重比例等。...四 ConstraintLayout简单案例 以下是一个简单ConstraintLayout案例,展示了如何使用ConstraintLayout来排列和对齐视图: <?...你可以根据需要修改和扩展这个简单案例,以满足实际界面需求。 五 总结 ConstraintLayout工作原理是通过设置视图之间宽度、高度和相对位置约束条件来实现。

    38920

    Swift-MVVM 简单演练(三)

    这里主要学习是如果突然增加需求,我们如何在合适位置处理问题。...系统提供了一个方法didMoveToWindow,字面上我们直接可以翻译出它意思,就是视图被添加到window上,表示视图已经显示,和Controller里面的viewDidAppear方法类似。...// MARK: - Animation extension HQWelcomeView { /// 视图被添加到`window`上,表示视图已经显示 override func...该如何处理呢? 上面说自动布局工作原理时候提到过 如果希望某些约束提前更新!...使用layoutIfNeeded 函数让自动布局系统,提前更新当前收集到约束变化 因此,我们手动调用一下layoutIfNeeded方法,将代码布局约束都创建好,并显示出来,然后再进行更新约束动画

    2.6K30

    Xamarin 学习笔记 - Layout(布局)

    End:该选项和Start刚好相反,将View放置在布局结束位置。 Fill:该选项将View撑满布局,不留白。 Center:该选项将视图放置在布局正中。 视图如何在父视图中对齐? ?...值 可以是绝对值(以像素为单位)或者比例值(从0到1) 位置:   X:视图锚定位置水平位置。   Y:视图锚定位置垂直位置。 尺寸:   Width:定义当前视图宽度。   ...Height:定义当前视图高度。 值被指定为边界和一个标志组合。LayoutBounds是由四个值组成矩形:x,y,宽度和高度。...HeightProportional:表示高度比例值,而其它数值以绝对值表示。 XProportional:表示X坐标值是比例值,而将其它数值作为绝对值对待。...ElementName:该约束相对于视图名称,如果我们使用关联到某个视图约束关系的话。

    1.6K20

    问题——持续更新

    解决:实际就是视图上移; 实现搜索框功能 Landscape (left home button)     Landscape (right home button) 限制程序只能是竖屏显示:在...在表格协议方法中  return  2  和return  _apps.count 结果不同(表现在单元格高度上)???...适配问题 怎么根据网络上上图片确定自己定义cell高度以及上面imageView大小 uilabel  文字置顶??...设置应用图标: 需要在Info.plist里设置,添加key为Icon files值,分别添加上面对应图标名称,到列表,例如: ? 怎么解决标签栏隐藏时,画面不和谐情况?...如何获取全屏图片用于上传   command+S 10.4 新加: 为ViewController添加导航控制器(xcode6中将自动设置为根视图控制器)?

    1.3K20

    【Android从零单排系列三十一】《Android布局介绍——TableLayout》

    一 TableLayout基本介绍 TableLayout是用于显示表格布局Android布局容器。它以行和列形式组织视图,使得视图可以以表格形式排列。...设置TableLayout属性: android:layout_width和android:layout_height:设置TableLayout宽度和高度。...android:stretchColumns:指定要拉伸列索引(从0开始),使其占据可用空间比例均衡分配,默认情况下所有列都具有相同权重。...android:stretchColumns:指定要拉伸列索引(从0开始),使其占据可用空间比例均衡分配,默认情况下所有列都具有相同权重。...android:shrinkColumns:指定当存在额外空间时要缩小列索引(从0开始)。 android:collapseColumns:指定要折叠隐藏列索引(从0开始)。

    23520

    iOS下界面布局利器-MyLayout布局框架

    而MyLayout则除了提供约束依赖外,还提供了根据视图添加顺序自动建立约束功能,从而减少了这种显示依赖关系建立问题,最终结果是简化了布局代码量,以及减少了布局更新时代码修改量。...AutoLayout只是一种相对约束布局,而MyLayout除了同时提供具有和AutoLayout相同能力相对布局外、还提供了线性布局、框架布局、表格布局、流式布局、浮动布局、路径布局7大布局体系,...并提供了视图隐藏显示时会自动激发布局、布局视图高度自适应(UITableviewCell动态高度)、标签云实现、左右内容宽度自适应、按比例分配尺寸和间距、整体停靠控制等等各种强大功能。...视图A左边距占用父视图宽度20%,而右边距则占用父视图宽度30%,高度则等于自身宽度。 视图B左边距是40,宽度则占用父视图剩余宽度,高度是40。...视图C宽度占用父视图所有宽度,高度是40。 视图D右边距是20,宽度是父视图宽度50%,高度是40。 最终效果图如下: !

    1.9K30

    带你领略 ConstraintLayout 1.1 新功能前言带你领略 ConstraintLayout 1.1 新功能

    而在约束布局 1.1 版本中,通过允许您轻松地将任何视图限制为百分比宽度或高度,一切将变得很简单。 ? 使用百分比指定按钮宽度,以便在保持设计效果同时适应可用空间。...image 通过 spread,spread_inside 和 packed,链条能够让您配置如何布置多个相关视图。...在布置国际化字符串或显示用户生成无法预测大小内容时,屏障非常有用。 ? image 屏障允许您通过几个视图来创建一个约束。 屏障将始终将自己置于虚拟群组之外,并且您可以使用它来限制其他视图。...在上面这个例子中,右视图被限制为始终处于最大文本视图末尾。 群组 有时您需要一次显示隐藏多个元素。为了支持这个,约束布局增加了群组功能。...当您有多个需要显示或陈列在一起元素时,这将很有用。

    1.7K20

    iOS一种基于服务器下发动态布局方案(一)

    这是一种将布局约束设置和视图分离布局方式,就像HTML中标签元素和css样式可以进行分离表示和存储。...在栅格布局中所有视图不需要进行任何布局排列相关约束设置,视图只负责内容、颜色、字体等相关属性设置,而栅格则负责位置和尺寸对齐以及边界线相关属性设置。...答案是否定,既然上面说了我们界面是由多个矩形区域组成,那么同样在一个栅格布局中也应该是由多个栅格组成。如何来对栅格进行拆分,栅格和栅格之间关系又是如何?以及如何用栅格来描述一个界面呢?...栅格这种定义特性,使得它不适合于用来解决那些具有重叠显示效果场景。...这种栅格定义规则隐藏了位置概念,以及隐藏了宽高概念,而是只用一个值就可以描述一个矩形区域位置和尺寸。而且我们规定只有叶子栅格区域才用来存放视图内容。

    1.4K30

    直播网站源码,显示隐藏标题栏

    Coding-on-Laptop_FVbYpeAIyoGi.jpeg 直播网站源码,显示隐藏标题栏相关代码 // An highlighted block public class DivViewActivity...//        iv_detail.getHeight();//就是如果这个视图树没有绘制完执行该方法,那么是得不到高度         //获取视图监听,我们得到视图树绘制完毕,我们再去得到控件高度...        ViewTreeObserver viewTreeObserver = iv_detail.getViewTreeObserver();         //使用视图观察者设置监听,以便获取所观察控件高度...});         //使用我们自定义ScrollView滚动监听,滑动超过图片高度,标题显示出来         scrollView.setmScrollViewListener(new...R.id.tv_titlebar);         layout_title = (RelativeLayout) findViewById(R.id.layout_title);     } } 以上就是直播网站源码,显示隐藏标题栏相关代码

    1.2K30

    Android经典实战之约束布局ConstraintLayout实用技巧和经验

    ConstraintLayout 概述 ConstraintLayout 是一种基于约束布局方式,与传统布局(如 LinearLayout、RelativeLayout)相比,具有更高灵活性和性能...它允许你在视图之间创建多种多样约束条件,比如对齐、比例、偏移等。 基本用法 要使用 ConstraintLayout 需要在布局文件中声明它,通常使用 XML 文件来定义约束: <?...它左右边缘约束到父布局左右边缘,顶部和底部分别约束到父布局顶部和底部,这样它就会在父布局中居中显示。...,这些约束可以是父布局或者其他视图边缘。...layout_constraintWidth_percent 和 layout_constraintHeight_percent:通过百分比来定义视图宽度和高度

    25410
    领券