获取iOS控件的隐藏属性

发布时间:2021-10-19 22:16:16

我们在开发的过程中用到的一些控件,明明一些属性我们一定会用到,但是是查看API就是没有,这个时候一般人会吐槽一下苹果;随后就是选择自己封装或者使用其他的实现方式来实现 。但是好多时候从网上搜出来的时候,人家大多都是通过KVC实现,这时候我就想人家咋获得的这些属性,我们怎么就不知道呢!其实很简单的……


1、首先引入头文件:#import?



unsigned int count = 0;


Ivar *ivars = class_copyIvarList([UITextField?class], &count);


? ? for (int i = 0; i


? ? ? ? ?Ivar ivar = ivars[i];


? ? ? ? NSLog(@"UITextField--->%s------%s", ivar_getName(ivar),ivar_getTypeEncoding(ivar));


? ? }





打印结果:




UITextField--->_textStorage------@"_UICascadingTextStorage"


UITextField--->_borderStyle------q


UITextField--->_minimumFontSize------d


UITextField--->_delegate------@


UITextField--->_background------@"UIImage"


UITextField--->_disabledBackground------@"UIImage"


UITextField--->_clearButtonMode------q


UITextField--->_leftView------@"UIView"


UITextField--->_leftViewMode------q


UITextField--->_rightView------@"UIView"


UITextField--->_rightViewMode------q


UITextField--->_traits------@"UITextInputTraits"


UITextField--->_nonAtomTraits------@"UITextInputTraits"


UITextField--->_fullFontSize------d


UITextField--->_padding------{UIEdgeInsets="top"d"left"d"bottom"d"right"d}


UITextField--->_selectionRangeWhenNotEditing------{_NSRange="location"Q"length"Q}


UITextField--->_scrollXOffset------i


UITextField--->_scrollYOffset------i


UITextField--->_progress------f


UITextField--->_clearButton------@"UIButton"


UITextField--->_clearButtonOffset------{CGSize="width"d"height"d}


UITextField--->_leftViewOffset------{CGSize="width"d"height"d}


UITextField--->_rightViewOffset------{CGSize="width"d"height"d}


UITextField--->_backgroundView------@"UITextFieldBorderView"


UITextField--->_disabledBackgroundView------@"UITextFieldBorderView"


UITextField--->_systemBackgroundView------@"UITextFieldBackgroundView"


UITextField--->_floatingContentView------@"_UIFloatingContentView"


UITextField--->_contentBackdropView------@"UIVisualEffectView"


UITextField--->_fieldEditorBackgroundView------@"_UIDetachedFieldEditorBackgroundView"


UITextField--->_fieldEditorEffectView------@"UIVisualEffectView"


UITextField--->_displayLabel------@"UITextFieldLabel"


UITextField--->_placeholderLabel------@"UITextFieldLabel"


UITextField--->_suffixLabel------@"UITextFieldLabel"


UITextField--->_prefixLabel------@"UITextFieldLabel"


UITextField--->_iconView------@"UIImageView"


UITextField--->_label------@"UILabel"


UITextField--->_labelOffset------d


UITextField--->_interactionAssistant------@"UITextInteractionAssistant"


UITextField--->_selectGestureRecognizer------@"UITapGestureRecognizer"


UITextField--->_inputView------@"UIView"


UITextField--->_inputAccessoryView------@"UIView"


UITextField--->_systemInputViewController------@"UISystemInputViewController"


UITextField--->_atomBackgroundView------@"UITextFieldAtomBackgroundView"


UITextField--->_textFieldFlags------{?="verticallyCenterText"b1"isAnimating"b4"inactiveHasDimAppearance"b1"becomesFirstResponderOnClearButtonTap"b1"clearsPlaceholderOnBeginEditing"b1"adjustsFontSizeToFitWidth"b1"fieldEditorAttached"b1"canBecomeFirstResponder"b1"shouldSuppressShouldBeginEditing"b1"inResignFirstResponder"b1"undoDisabled"b1"explicitAlignment"b1"implementsCustomDrawing"b1"needsClearing"b1"suppressContentChangedNotification"b1"allowsEditingTextAttributes"b1"usesAttributedText"b1"backgroundViewState"b2"clearingBehavior"b2"overridePasscodeStyle"b1"shouldResignWithoutUpdate"b1"blurEnabled"b1"disableFocus"b1}


UITextField--->_deferringBecomeFirstResponder------B


UITextField--->_avoidBecomeFirstResponder------B


UITextField--->_setSelectionRangeAfterFieldEditorIsAttached------B


UITextField--->_animateNextHighlightChange------B


UITextField--->_baselineLayoutConstraint------@"NSLayoutConstraint"


UITextField--->_baselineLayoutLabel------@"_UIBaselineLayoutStrut"



2、现在我们可以根据这些打印出来的隐藏的属性来修改我们要改的东西了,比如这个输入框中placeholderLabel的字体颜色:


? ?


? ?[_textField?setValue:[UIColor?blueColor]?forKeyPath:@"_placeholderLabel.textColor"];?




相关文档

  • 《一面五星红旗》优秀教学设计
  • 福建泉州有几个小学分别是什么
  • 克莱因蓝是什么梗克莱因蓝梗的出处是什么
  • 手机用久了又慢又卡怎么设置可以让它快起来
  • 苹果手机是否有nfc功能
  • springboot利用线程池异步记录日志(二)
  • 《人工神经网络》期末复习文档汇总
  • 事务处理:概念与技术
  • oracle为什么要ip地址,连接oracle时localhost可以ip地址不可以
  • 小蜜蜂与玉琪公主(童话)
  • 场区整治工作总结
  • 你真了不起五年级作文
  • Unity 进阶 - 动画系统 - 根动作
  • 玩了一次linux的crash工具。真TMD牛逼!!!!
  • 简单学唱歌技巧
  • 在java中如何输入_java如何输入
  • 献曲求诗阅读题的答案
  • 有关轻工与食品工程专业的自我鉴定
  • harbor部署报错
  • 中医院科研设备管理方法论述论文
  • 县防汛工作汇报
  • 高考语文论述类文章阅读专题练习试题
  • 避孕药停经 避孕药的副作用
  • 运动前需要卸妆吗7个运动保养注意事项
  • 应聘财务简历自我评价
  • 图书室工作计划及总结关于学校图书室的工作计划范文
  • 简爱的读书笔记
  • libc glibc glib 的关系
  • 转型从归零开始阅读答案
  • 忘记XP登入密码的9种解决办法
  • 猜你喜欢

    电脑版