作者zonble (zonble)
看板MacDev
标题Re: [问题] 自定元件
时间Sat Oct 17 22:16:56 2009
※ 引述《jlovet (打不赢怪兵器不好)》之铭言:
: 例如说,我想要自定一个nsview
: 左边是一个按钮,右边是一个label
: 我可以在interface builder里面建立出来然後加到程式里面
: 可是这样弄出来的好像是一个在 .xib 里面,程式执行的时候
: 被实体化的instance
: 可以把它弄成一个一般元件,让程式可以自己建立一堆来用吗?
: [mainview addSubView:[[myview alloc] init]];
: 像这样
: 想知道有没有快速简单的方法
: 谢谢
你是说像用.Net 写 custom control 那样的东西?
几个方法:
1. subclass 一个 nsview,然後在这个 nsview siubclass
里头的 init 里头自己产生要用的 button 跟label,然後
把这些东西 [self addSubView:...]
要 sample code 的话-
http://github.com/zonble/bunt/blob/master/Classes/ZBSourceCodeView.h
http://github.com/zonble/bunt/blob/master/Classes/ZBSourceCodeView.m
2. 把需要用到的东西拆到另外一个 nib 里头,然後用
NSBundle 的 loadNibNamed:owner:options: 载入。而现在
你也可以用 NSViewController 载入 nib 就是了。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.137.7.146
1F:→ jlovet:第一个看起来太累了,我会试试看第二个方法 10/17 22:45
2F:→ jlovet:找不到这个方法@@ 10/17 23:22
4F:→ jlovet:可以给我一个范例嘛,谢谢 10/18 13:56
6F:→ zonble:话说 loadNibNamed:owner:options: 是 iPhoneSDK 的 10/18 14:24
7F:→ zonble:Cocoa 的应该是 loadNibNamed:owner: :p 10/18 14:24
8F:→ jlovet:喔喔,我都google nsbundle然後就随便点进去看了...xd 10/18 14:59