类别和继承有什么区别和用途? [复制]

2024-01-21

可能的重复:
Objective-c中继承和类别的区别 https://stackoverflow.com/questions/522341/difference-between-inheritance-and-categories-in-objective-c

什么时候应该使用子类化以及什么时候应该使用类别?


当您想要扩展基础所使用的功能时,可以进行子类化。

@interface MyObject: NSObject<SomeProtocol>

当您想要向您可能无法控制的代码添加便捷方法时,请添加类别。

@interface UIView (MyViewAdditions)

- (void)recursiveEnumerateSubviewsUsingBlock:(void (^)(UIView *view, BOOL *stop))block;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

类别和继承有什么区别和用途? [复制] 的相关文章

  • iOS:弃用 AudioSessionInitialize 和 AudioSessionSetProperty

    我对 Objective C 很陌生 正在尝试更新一些大约 3 年前的代码以与 iOS 7 一起使用 有两两个实例AudioSessionSetProperty and AudioSessionInitialize出现在代码中 1 void
  • 使用 Push Transition 效果更改 RootViewcontroller

    在我的iOS应用程序中 我需要更改应用程序之间窗口的rootviewController 因此 当我动态更改我的rootviewcontroller时 它会在更改之前轻拂视图 但我想要的是在更改rootviewcontroller时提供平滑
  • 使用 UIImagePickerController 的应用程序在拍照后选择“使用照片”时冻结

    我现在正在开发一个简单的照片和视频捕获应用程序 该应用程序成功地允许用户按下按钮即可拍摄照片或视频 但是 一旦您完成拍摄照片或视频 它就会提供 2 个选项 重新拍摄 和 使用照片 或 使用视频 具体取决于您使用的选项 如果用户点击 重新拍摄
  • 如何从 NSString 中删除十六进制字符

    我面临一个与字符串中的某些十六进制值相关的问题 我需要从字符串中删除十六进制字符 The problem is when i print object it prints as BLANK line And in debug mode it
  • 如何使用 ZBar 读取器的 scanCrop 属性?

    我正在使用 iPhone 的 ZBar SDK 来扫描条形码 我希望阅读器仅扫描特定的矩形而不是整个视图 为此需要将阅读器的 scanCrop 属性设置为所需的矩形 我很难理解必须设置的矩形参数 有人可以告诉我如果在纵向视图上它的坐标是 我
  • Objective-c中的贝塞尔曲线算法

    比我聪明的人可以看一下这个吗 我正在尝试实现我发现的贝塞尔曲线算法here http webtweakers com swag GRAPHICS 0074 PAS html在 Objective c 中 输出是错误的 我想我正确地转换了代码
  • 如何在ios中以编程方式添加水平间距和垂直间距?

    我在 ios 8 中创建了一个应用程序 因为我有 4 个可垂直使用的标签 它应该在某些条件下更改位置 所以我已禁用自动布局并以编程方式设置约束 现在的问题是 我可以设置水平和垂直位置 宽度和高度的约束 但我找不到任何方法来添加标签之间的水平
  • 为什么 GDB 调试器不断冻结 Xcode 4?

    这真是一个奇怪的错误 我正在开发一个使用相机源的 iPhone 项目 并通过 OpenGL 着色器运行它以对其应用效果 然而 每次我在代码中简单地创建一个新的 GLfloat 时 调试器都会在启动时冻结 我无法复制和粘贴文本 因为整个 XC
  • 如何在内存中存储分子?

    我想将分子存储在内存中 这些可以是简单的分子 Methane CH4 C H bond length 108 7 pm H H angle 109 degrees But also more complex molecules like p
  • Apple 帮助创作

    我正在跟进本指南 http developer apple com library mac documentation Carbon Conceptual ProvidingUserAssitAppleHelp authoring help
  • python多重继承,调用基类函数

    我只是尝试在 python 中进行多重继承 我想出了这个 class ParentOne def foo self print ParentOne foo is called class ParentTwo def foo self pri
  • iPhone ImageView序列动画

    嘿 尝试将一个简单的 png 序列动画放入我的应用程序中 我在 IB 中放置了第一个框架 并将图形动画出口连接到它 序列中有 54 个 png 名称为 Comp 1 0000 png 到 Comp 1 00053 png 这是我的代码 vo
  • 从模块中获取类名

    如何从模块中获取该模块包含的类的类名 module ActMethods def some method attr names cls self class this doesn t work end end 如何进入 cls 变量 加载此
  • iPhone 上的锁定方向 UIWebView

    有没有办法锁定 UIWebView 的方向 使用 Obj C JS 还是 Html 我不想有按钮或任何东西 我只想在应用程序打开时将其锁定为纵向 好像这个堆栈溢出帖子 https stackoverflow com questions 43
  • 将子视图发送到后面

    我正在尝试模仿 facebook ios 侧面菜单并让它工作 但是我遇到的问题是我无法将侧面菜单发送到后面 正如另一个问题中所讨论的那样使用 Objective C 的 iphone facebook 侧边菜单 https stackove
  • 后台模式下的 AVSpeechSynthesizer

    我无法获取 iOS 7AVSpeechSynthesizer当我的 iOS 应用程序处于后台模式时工作 我添加了 应用程序播放音频 应用程序支持的后台模式的关键 但我仍然无法让它工作 我还研究了创建一个AVMutableCompositio
  • 在 iPhone 模拟器中从硬盘读取文件

    是否可以将文件 从我的普通文件系统 读入在 iPhone 模拟器上运行的 iPhone 应用程序 据我所知 iPhone 本身没有 用户可访问的 文件系统 但这只是为了测试 并且只能在模拟器中运行 该文件将是一个可以在应用程序运行时编辑的文
  • Draggable UIView 在添加到 UIScrollView 后停止发布 TouchBegan

    在 Xcode 5 1 中我创建了一个简单的测试应用程序 https github com afarber ios newbie tree master ScrollContent对于 iPhone 结构是 scrollView gt co
  • 如何使用所有类型的 UTI 初始化 UIDocumentPickerViewController

    我想打开 UIDocumentPickerViewController 并且它应该允许用户选择所有类型的文件 我尝试在 UIDocumentPickerViewController init 方法中提及所有 UTI 但仍然找不到某些文件 如
  • 是否可以使用 UITableViewStylePlain 禁用 UITableView 中的浮动标题?

    我正在使用一个UITableView布局内容 页面 我使用表视图的标题来布局某些图像等 如果它们不浮动而是保持静态 就像样式设置为时那样 我更喜欢它UITableViewStyleGrouped 其他则使用UITableViewStyleG

随机推荐

  • 存储倒排索引

    我正在从事一个关于信息检索的项目 我使用 Hadoop Python 制作了完整倒排索引 Hadoop 将索引输出为写入文件的 单词 文档列表 对 为了快速访问 我使用上面的文件创建了一个字典 哈希表 我的问题是 如何在磁盘上存储这样一个具
  • 为什么属性“禁用”而不是“启用”

    我总感觉disabledHTML 属性
  • 为什么 ui.item.attr("id") 返回未定义的值?

    我正在处理之间的可排序 li of ul 但当我试图得到ui item attr id 我未定义 但其他变量运行良好 例如 this attr id and ui sender attr id 但我正在搜索的索引 ul 元素从哪里拖动 我的
  • Rails Gem Devise 是否有解决方案允许用户拥有多个电子邮件?

    我正在寻找一种解决方案 允许我的应用程序上的用户拥有超过 1 封电子邮件 这应该与 Facebook LinkedIn 和 Quora 类似 一个帐户可以有多个电子邮件地址 其中 1 个作为主要电子邮件地址 是否有可用的设备交钥匙解决方案
  • 正确的 ARIA 处理面包屑导航

    可以采取哪些措施来提高面包屑菜单的可访问性 类似于 ul class breadcrumbs li a href Home a li li a href news News a li li class unavailable a href
  • Blazor - Web 组件 - WebAssembly - 微前端

    我正在研究微前端并能够使用不同技术构建功能 到目前为止 创建 Web 组件并在 Monolith 上使用它们是我发现的最佳方法 研究创建 Web 组件并在不同服务中提供模块的不同方法是一种有趣的体验 使用 Blazor 查看 WebAsse
  • 为什么添加简单的 SQL 查询作为 Power BI 数据源会阻止本机查询折叠?

    我已经添加了SQL数据源 然后 我没有选择表 而是输入了以下查询 SELECT ID NAME AGE FROM STUDENTS 当我右键单击该步骤时 我看到本机查询选项被禁用 为什么添加简单的 SQL 查询作为 Power BI 数据源
  • MS Access 准备好的语句

    是否可以在 MS Access 中对 VBA 中的本地表执行准备好的语句 如下所示 UPDATE part SET part description WHERE part id 如果是这样 它是如何完成的 Dim db As DAO Dat
  • Java 正则表达式帮助:捕获键值对

    我正在尝试从具有以下形式的字符串中捕获键值对 a0 d235 a1 2314 com1 abcd com2 a b c d 使用来自的帮助这个帖子 https stackoverflow com questions 168171 regul
  • iOS - 循环单元格并检索数据

    抱歉 我对 iOS 开发还很陌生 我有一个UITableView从单个 XiB 笔尖拉出的单元进行设置 我在笔尖中创建了一个开 关开关 并且我试图保存开关的状态viewWillDisappear我拥有的细胞数量 准确地说是 6 个单元 如何
  • C# 中的 MemoryStream Xml 架构验证失败

    这是我的功能 如果将 MemoryStream 传递给 XmlReader 有时它不会验证正确的 xml 文件 我将 XmlDocument 对象存储在内存中 我想根据最终用户提供的 xsd 架构文件对其进行验证 ValidateSchem
  • 如果 .slideDown 超出浏览器底部,如何自动向上滚动页面?

    我有一个表格 当鼠标悬停在行上时 通过 jQuery SlideDown 显示每行的附加信息 当鼠标移开时 信息将通过向上滑动删除 这工作得很好 但是当我将鼠标悬停在页面上的最后一个项目上时 它会滑到浏览器窗口底部下方 如果用户使用鼠标滚轮
  • jar 清单中的绝对路径名与相对路径名

    我想引用固定位置的 jar 文件以供多个可执行 jar 文件使用 而不是在每个可执行文件中包含该 jar 文件 我有以下设置 效果很好 commons math3 3 6 1 jar 存在于目录 testgradle 中 TestGradl
  • 使用寄存器值作为搜索模式

    我希望使用寄存器的内容作为 Vim 中的搜索模式 我想从命令行执行此操作 因此我无法使用
  • Spring - AOP:@within异常:java.lang.IllegalArgumentException:错误引用的类型不是注释类型

    我是 AOP 和 AspectJ 的新手 我正在尝试围绕具有元素类型的自定义注释编写自定义逻辑TYPE 我还想使用注释下的参数在 around 方法内编写自定义逻辑 我收到下面提到的错误 我尝试阅读多个来源 大多数来源都与使用有关 anno
  • 如何在单元格中显示当前用户名?

    在我能找到的大多数在线资源中 通常会告诉我如何在 VBA 中检索此信息 有没有直接的方法可以在单元格中获取这些信息 例如 简单如 ENVIRON User 这没有用 根据下面链接中的说明 执行以下操作 在 VBA 中插入一个新模块并粘贴以下
  • 使用 javamail 发送邮件不起作用

    我正在尝试使用我的 Gmail 地址发送电子邮件 我将 debug 设置为 true 这就是我得到的 DEBUG JavaMail version 1 4 1 DEBUG not loading file System Library Ja
  • 如何使用 heroku CLI 避免使用 --app 选项?

    我厌倦了每次运行时输入应用程序的名称heroku终端中的命令 heroku run rake db migrate app myapp heroku run rake db seed app myapp heroku run rake st
  • 离子闪屏(错误:无法读取上传的图像)

    我正在尝试使用 ionic resources splash 命令 我在资源文件夹以及 ios 和 android 文件夹的根目录中保存了一个 flash png 文件 其尺寸为 2208 x 2208 这是建议的大小 但是当我运行命令时出
  • 类别和继承有什么区别和用途? [复制]

    这个问题在这里已经有答案了 可能的重复 Objective c中继承和类别的区别 https stackoverflow com questions 522341 difference between inheritance and cat