- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我从事 Java 开发已有多年,大约一年前转向 Android 开发。在解决了 Android 问题之后,我尝试用 iOS 测试一下自己的运气。到目前为止一切顺利,但我对“委托(delegate)”的想法仍然很模糊。我在这里阅读了几篇文章,但仍然没有最好的主意。在我看来,它们似乎类似于 Java 中的继承,例如使用接口(interface)或抽象类。
谁能以我可能理解的观点澄清一下?
提前致谢。
最佳答案
不,这不是继承的同一个概念。
我会说这就像 AWT/Swing 中使用的监听器方法。例如:
class MyActionListener implements ActionListener {
public void actionPerformed(ActionEvent e) { ... }
}
myComponent.addActionListener(new MyActionListener);
在 ObjC 中使用委托(delegate)方法看起来像:
@class MyActionListener : NSObject<NSActionListener>
-(void) actionPerformed:(NSEvent*)event;
@end
myComponent.delegate = [[[MyActionListener alloc] init] autorelease];
在实践中,您委托(delegate)一个类的一些行为给组合使用的特定其他对象(而不是继承),以便在需要时调用委托(delegate)方法(用于回调,要么提供具体的实现等等)
关于java - 来自 Java 开发人员 POV 的 iOS 委托(delegate),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10032666/
在我的应用程序中,我有一个 Google map 和位于两个不同 div 中的相关街景。 POV 的街景值以打包字符串的形式存储在数据库内,例如: 34.094522, -118.3112770000
我正在尝试构建一个非常简单的场景,其中包含一些用 wrapper 包裹的圣诞礼物。这是我尝试执行此操作的方法,但图像 (wrapping_paper.jpg) 只是被映射到盒子面上,然后在 Z 方向上
经过长时间的搜索,我终于找到了如何使用 overflow: hidden; 裁剪图像而不扭曲/挤压图像。现在我的下一个问题;我如何让图像显示我想要的部分,这意味着,当使用 overflow:hidde
我使用 three.js 创建了一个基本场景。我的目标是基于 FirstPersonControls.js 制作一个 pov 相机 我修改了它的代码以满足我的需要(点击鼠标移动 View 等)我快完成
这里的这个函数基本上获取开始和结束日期,并循环遍历这些日期之间的所有月度日期。我面临的问题是,如果用户将日期指定为 2018-01-30(Y-m-d 格式)并且它将跳过 2 月,而是给出一个不需要的日
所以,我想要做的是在自定义 2D 多边形上应用颜色渐变,但我找不到任何有关如何执行此操作的说明/示例(我只能找到 3D 的)。具体来说,我想这样做: 总的来说,我想知道如何从(多边形的)中心向外应用一
我正在将 C#/directx 游戏客户端移植到 Java,这样我就可以学习一些 C#(因为我完全不喜欢它),同时提高我对 java opengl 引擎的知识。 当我遇到类似以下情况时: Monito
单精度(32 位):位除法为 like this : 所以我们有 23 位的尾数/有效数。 因此我们可以表示 2^23 个数字(通过 23 位):即 8388608 --> 7 位长。 但是 我读到尾
已关闭。此问题旨在寻求有关书籍、工具、软件库等的建议。不符合Stack Overflow guidelines .它目前不接受答案。 我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以
SELECT DISTINCT p.products_image, p.products_quantity, m.manufacture
我正在尝试安装 POV-Ray 3.7 稳定版。我从github repo下载了源代码. 我遵循了 README file 中描述的 unix 系统说明。 . 不幸的是,我在运行配置命令时收到错误消息
我能够通过以下方式将 Functor 的定义从范畴论映射到 Haskell 的定义:因为 Hask 的对象是类型,仿函数 F 映射每种类型 a的 Hask到新类型F a粗略地说,在它前面加上“F”。
我已经知道如何处理 ng-repeat 性能问题(使用观察者)的常见模式,例如:one-time-bind、无限滚动、等等。 但是我看到了这个answer一个建议转向指令的人。 好吧,我从简单的旧方法
我有一个简单的街景 View ,可以向我显示给定地址的街景 View : var geocoder = new google.maps.Geocoder(); var address = "344 L
关闭。这个问题是opinion-based 。目前不接受答案。 想要改进这个问题吗?更新问题,以便 editing this post 可以用事实和引文来回答它。 . 已关闭 6 年前。 Improv
我有一个名为 StreetViewSafari 的小网络应用程序它在屏幕上有一个 StreetViewPanorama 和一个 map ,并且无法确定如何同时设置 PanoramaId(摄像头位置)和
注意:此问题仅旨在从性能的角度检查代码,而不是可读性和可扩展性。他们说“过早的优化是万恶之源”,而在我使用的示例中,潜在的性能优势可以忽略不计。我只是想知道编译器优化是否会导致计算机最终执行命令,就像
在这里,我正在尝试将一些 POV-Ray 代码转换为 Python。我正在使用 VAPORY 模块。特别是,部分 scale *1.75和 pigment{ color rgb*1.1 }非常困惑。不
我正在开发一个需要从多个角度渲染场景的应用程序。我注意到,如果我渲染一次,即使片段着色器又长又复杂(写入多个 3D 纹理),它也会以 65 FPS 运行。只要我在此之前添加另一个渲染 channel
关于这个主题有很多问题,但没有一个(one but still a short one 除外)处理以下场景。 来自 C# 4 书: 马克还写道: if you change the value of
我是一名优秀的程序员,十分优秀!