iOS controls hide and gone like android(iOS 控件像 android 一样隐藏和消失)
问题描述
我在 UI 设计中使用了带有自动布局的情节提要.基本上在 android 中会有三个不同的属性,比如 Visible、Invisible 和 Gone.
I have used storyboard with autolayout for my UI design. Basically in android there are three different properties will be there like Visible, Invisible and Gone.
例如:
1) android:visibility="gone" // used to hide the control and as well as space
(or)
CONTROLNAME.setVisibility(View.GONE);
2) android:visibility="invisible" // used to hide the control but it will take space
(or)
CONTROLNAME.setVisibility(View.INVISIBLE);
在 iOS 中,
objective-c
1) ?
2) [CONTROLNAME setHidden:TRUE]; // used to hide the control but it will take space
迅速
1) ?
2) CONTROLNAME.isHidden = true // used to hide the control but it will take space
作为 iOS 中的 Gone 我已经从谷歌搜索但我无法找到解决方案.
for act as a Gone in iOS i have searched from google but i can't able to find the Solution.
推荐答案
要删除视图(控件)占用的空间,可以将其框架的 size
减小为零或将其从查看层次结构.IE.通过在控件上调用 removeFromSuperview
.
To remove the space occupied by a view(control) can either reduce the size
of its frame to zero or remove it from the view hierarchy. I.e. by calling removeFromSuperview
on the control.
例如,如果您必须删除 UITextField
(例如 CONTROLNAME
)占用的空间,那么您可以使用:
For example if you have to remove the space occupied by a UITextField
(say CONTROLNAME
), then you can either use:
CGRect tempFrame = CONTROLNAME.frame;
CGSize currentSize = tempFrame.size; //for later use
tempFrame.size = CGSizeZero;
CONTROLNAME.frame = tempFrame;
或
CGRect currentFrame = CONTROLNAME.frame; //for later use
[CONTROLNAME removeFromSuperview];
更新:
在第一种情况下,您必须存储较早的大小才能将控件恢复到其初始位置.
In the first case you will have to store the earlier size to bring back the control to its initial position.
CGRect tempFrame = CONTROLNAME.frame;
tempFrame.size = currentSize; //set to initial value
CONTROLNAME.frame = tempFrame;
在第二种情况下,您必须存储控件的框架以将其带回其初始位置(如果它是局部变量或弱实例变量,则还包括控件本身).
In the second case you will have to store the frame of the control to bring it back to its initial position (and also the control itself if it is a local variable or weak instance variable).
CONTROLNAME.frame = currentFrame;
这篇关于iOS 控件像 android 一样隐藏和消失的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:iOS 控件像 android 一样隐藏和消失
基础教程推荐
- UIWebView 委托方法 shouldStartLoadWithRequest:在 WKWebView 中等效? 2022-01-01
- 如何在 UIImageView 中异步加载图像? 2022-01-01
- 在 gmail 中为 ios 应用程序检索朋友的朋友 2022-01-01
- Android:对话框关闭而不调用关闭 2022-01-01
- 当从同一个组件调用时,两个 IBAction 触发的顺序是什么? 2022-01-01
- android 应用程序已发布,但在 google play 中找不到 2022-01-01
- Kivy Buildozer 无法构建 apk,命令失败:./distribute.sh -m “kivy"d 2022-01-01
- 如何在没有IB的情况下将2个按钮添加到右侧的UINavigationbar? 2022-01-01
- 如何让对象对 Cocos2D 中的触摸做出反应? 2022-01-01
- 如何在 iPhone 上显示来自 API 的 HTML 文本? 2022-01-01