首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >是否允许我修改默认iOS控件的子视图?

是否允许我修改默认iOS控件的子视图?
EN

Stack Overflow用户
提问于 2013-02-21 00:51:20
回答 3查看 105关注 0票数 0

是否允许我们修改默认iOS控件的子视图,如UIDatePicker?我的应用程序有一个简约/扁平的UI,而默认的日期选择器与这种风格不匹配。我能找到的修改它的唯一方法是遍历它的子视图,并隐藏添加阴影的子视图,等等,如下所示:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
UIView *background = (UIView *)[[self pickerViews].subviews objectAtIndex:0];
background.hidden = YES;

这是允许的,还是会让我的应用程序被拒绝?我实际上并不是在扰乱控件或它的功能,只是它的外观。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-02-21 00:55:33

虽然您可能不会立即被拒绝,但当控件的子视图更改时,您可能会在将来看到意外的行为。更好的办法是创建自己的自定义控件,或者在公共API中找到接近您想要的外观的方法。

票数 2
EN

Stack Overflow用户

发布于 2013-02-21 05:04:09

它并不是真正的“私有API”--它完全记录在SDK中。但是,您所依赖的行为并未记录在案(也就是说,子视图0是您想要隐藏的那个),因此您需要小心。

您的代码有两个潜在问题:

  • 如果顺序改变,它将隐藏错误的视图(检查视图类通常用于在某种程度上防止这种情况)
  • 如果选择器没有子视图,它将崩溃(这似乎不太可能发生;当您访问索引6处的视图时,这是一个更大的问题)。

您还需要做两件额外的事情:

  • 保留一个列表,列出您所做的任何可能在将来的操作系统releases.
  • Check中被破坏的事情,并且这些事情在
  • 中仍然有效,并且尽早这样做!
票数 1
EN

Stack Overflow用户

发布于 2013-02-21 01:08:14

不建议更改未通过API公开的内容。将来,苹果可能会删除该特定索引处的子视图。最好避免这种方法。尝试在UI或实现方面寻找其他选项。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14992779

复制
相关文章
iOS 判断相册相机是否允许
1 判断是否允许使用相机: NSString *mediaType = AVMediaTypeVideo; AVAuthorizationStatus authStatus = [AVCaptureDevice authorizationStatusForMediaType:mediaType]; if(authStatus == ALAuthorizationStatusRestricted ||
王大锤
2018/05/17
9040
【iOS 开发】父视图外部子视图点击响应 - hitTest
面试被问过两次了的一个问题,记录一下:假如一个 UIView(我们称作 FatherView),有一个 subview(我们称作 ChildView),这个 ChildView 在 FatherView 的 frame 外部,那么默认情况下,这个 ChildView 被点击的时候,并不会触发 FatherView 的点击响应链(这是合情合理的,FatherView 所在的位置都没被点击,它不遍历 subviews,不作回应是正常的),这时候怎样才能让这个 ChildView 相应点击事件?
KyXu
2019/04/11
1.1K0
【iOS 开发】父视图外部子视图点击响应 - hitTest
iOS开发小点·移除所有子视图
需求: 移除所有子视图 思路1 - OC的API [view.subviews makeObjectsPerformSelector:@selector(removeFromSuperview)]; 思路2 - 循环 for(UIView *view in [self.view subviews]){ [view removefromsuperview] } 思路3 - 枚举 [[self.view subviews] enumerateObjectsUsingBlock:^(id _Nonn
陈满iOS
2018/10/26
1.5K0
C# WinForm 判断窗体控件是否修改过
1.自定义控件, 和接口 interface IModify { bool IsModified { get; } } class TextBoxEx : TextBox, IModify { private bool isModified = false; public bool IsModified { get { return isModified; }
跟着阿笨一起玩NET
2018/09/18
1.1K0
iOS遍历打印所有子视图引实现结
有时候搞研究啊,需要找找一个View有哪些子View,主要是分别是什么类型的,这种事情用递归来做比较好。
Cloudox
2021/11/23
6410
iOS遍历打印所有子视图引实现结
iOS运用runtime全局修改UILabel的默认字体
        在项目比较成熟的基础上,遇到了这样一个需求,应用中需要引入新的字体,需要更换所有Label的默认字体,但是同时,对于一些特殊设置了字体的label又不需要更换。乍看起来,这个问题确实十分棘手,首先项目比较大,一个一个设置所有使用到的label的font工作量是巨大的,并且在许多动态展示的界面中,可能会漏掉一些label,产生bug。其次,项目中的label来源并不唯一,有用代码创建的,有xib和storyBoard中的,这也将浪费很大的精力。这种情况下,我们可能会有下面两种处理方式。
珲少
2018/08/16
1.4K0
iOS运用runtime全局修改UILabel的默认字体
iOS App不弹框询问“是否允许应用访问数据”的问题
1、一般情况下,App首次启动都会弹出一个询问用户“是否允许应用访问数据”的弹框;
动动我试试
2020/03/12
3.5K0
iOS第三方星级视图控件——HCSStarRatingView
        HCStarRatingView是一款十分小巧的星级视图控件,其通过原生画图的方式来渲染星级视图页面,同时,其也支持开发者对星级图片的自定义操作。
珲少
2018/08/15
4850
iOS第三方星级视图控件——HCSStarRatingView
允许进行DML操作的视图条件
视图可以屏蔽某些基表的信息,或是join多个基表组成一个复杂查询,视图本身也是可以进行DML操作,但受一些条件的限制。
bisal
2019/01/29
7920
gitbash修改默认目录,Git修改默认的启动目录的方法,修改git的默认路径
很明显默认是用户的目录,虽然可以手工去指定目录然后右键开启gitbash就能到指定的目录,但是很麻烦,比如我的网站目录是在D:\wwwroot,每次去切换好累啊。
高久峰
2023/06/20
4020
iOS选择器视图控件(UIPickerView)使用方法总结
UIPickerView是iOS中的原生选择器控件,使用方便,用法简单,效果漂亮。
珲少
2018/08/15
1.2K0
禁止子视图响应父视图的点击事件
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u010105969/article/details/50970367
用户1451823
2018/09/13
1.7K0
iOS默认的样式
公式: px = density * dp density = dpi / (160像素/英寸) iOS图片(`image@2x.png)后面的2就是densityiOS代码中所有的高度宽度也都是density`
码客说
2019/10/22
5620
IOS10 APP安装后打开不提示是否允许使用数据
我们首先把问题手机拿回来,加上了代理监控了请求,发现打开APP到点击登录,都没有任何网络请求,像是APP没有网络权限。我们打开使用无线局域网与蜂窝移动的应用里面(如下图),确实没有找到我们的APP。
forrest23
2018/08/03
2.3K0
IOS10 APP安装后打开不提示是否允许使用数据
【实现】表单控件里的子控件的变化。
     上一篇说的是表单布局上的变化,也就是通过TR、TD的设置,实现了多行多列的效果。那么格子画好了,我们 可以往里面放控件了。上次都是用的文本框,这个显然是不行的,还要扩大这个范围。      这个控件的范围就比较大了,不光是TextBox、DropDownList,还有HTM编辑器这类的,都是可能会往里面放的,当然象GridView这样的就先不考虑了。另外还要可以扩展,可以随时增加新的子控件。      那么控件得类型这么多,要如何控制呢?第一用基类,第二用接口。      基类是.net Fram
用户1174620
2018/02/26
1.7K0
【实现】表单控件里的子控件的变化。
UIScrollView
UIScrollView UIScrollView全部API学习。 //1.设定滚定条的样式 typedef NS_ENUM(NSInteger, UIScrollViewIndicatorStyle) { UIScrollViewIndicatorStyleDefault, // black with white border. good against any background 黑白边框 UIScrollViewIndicatorStyleBlack, // black only. small
用户1941540
2018/05/11
1.8K0
iOS中表单视图第三方控件——FXForms 原
        表单视图是移动开发中十分常用的一种UI方式。在iOS开发中,系统的UITableView可以用来创建表单视图,其界面的渲染与逻辑的处理需要开发者实现许多代理方法。FXForms是一个第三方的表单创建工具,其通过配置的方式来进行表单界面的创建,并且其中为开发者封装好了各种常用类型的表单cell。
珲少
2018/08/15
1.2K0
iOS中表单视图第三方控件——FXForms
                                                                            原
史上最详细的iOS之事件的传递和响应机制-原理篇
按照时间顺序,事件的生命周期是这样的:   事件的产生和传递(事件如何从父控件传递到子控件并寻找到最合适的view、寻找最合适的view的底层实现、拦截事件的处理)->找到最合适的view后事件的处理(touches方法的重写,也就是事件的响应)
VV木公子
2018/06/05
11.4K0
史上最详细的iOS之事件的传递和响应机制-原理篇
iOS开发中UITableViewCell点击时子视图背景透明的解决方法
        在做iOS项目的开发中,UITableView控件的应用十分广泛。在进行自定义UITableViewCell时,经常有小伙伴遇到这样的问题:在UITableViewCell上面添加了一个有背景颜色的子视图,当用户点击UITableViewCell或者选中UITableViewCell时,Cell上的子视图发生了奇怪的变化,其背景色变透明了,如果添加在Cell上的子视图只是一个色块,那么我们看起来,这个子视图好像莫名其妙的消失了一样。如下图所示:
珲少
2018/08/15
1.4K0
iOS开发中UITableViewCell点击时子视图背景透明的解决方法
GridView控件修改、删除示例(修改含有DropDownList控件)
GridView控件修改、删除例子,修改时含有DropDownList控件。 示例运行效果图:
Java架构师必看
2021/03/22
6290

相似问题

iOS:使用分段控件更改子视图

10

iOS:是否可以修改UIImagePickerController默认UI?

10

隐藏iOS标准控件的子视图的风险

23

如何修改默认的控件主题?

12

强制iOS视图不旋转,同时仍然允许子视图旋转

61
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文