作者wfgh (lyle)
看板MacDev
标题[问题] UILabel.text无法更新
时间Mon Jan 17 18:54:45 2011
(IBOutlet) UILabel *label
for(int i=1; i<10; i++)
{
label.text = [dictionary objectForKey:key];
}
dictionary的value是NSString*
请问我像上面那样写的话
我的UILabel的文字显示都没有变
为什麽呢?
有办法更新他吗?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 111.240.227.194
1F:→ wfgh:google好久都找不到解答 01/17 18:55
2F:→ zonble:几个可能: 1. 你 IBOutlet 忘记连 01/17 20:50
我IBOutlet有连结
因为我在viewDidLoad里打label.text = @"abc"
程式执行时他UILabel是显示abc没错
但我在viewDidLoab以外的instance method里打label.text = @"abc"
就没有反应
3F:→ zonble:2. 你还没有载入 view 就做这件事情 01/17 20:51
我是在view载入之後才做的
上面只是个范例
并非我程式原码
我的程式是按下播放後
他会去dictionary把歌词抓出来
按照目前播放时间替换到UILabel上
所以当然是view载入才可以按下播放键
4F:→ zonble:然後连做十次的目的是? 01/17 20:51
连做十次只是个范例方便让大家理解我的问题
事实上我做的次数比十次还多
因为歌词不只十行
※ 编辑: wfgh 来自: 111.240.229.193 (01/17 22:29)
※ 编辑: wfgh 来自: 111.240.229.193 (01/17 22:30)
5F:→ uranusjr:这样做 view 不会有更新机会吧, 要用 timer 之类的机制 01/17 22:41
6F:→ wfgh:请问要怎麽更新VIEW呢? 01/17 22:51
7F:→ starkite:想请问如果在tabview中 点选每一个cell连接到一个解析 01/18 00:23
8F:→ starkite:後的影片位置 目前只能单独连结到一个影片 变成每一个 01/18 00:24
9F:→ starkite:cell点的影片都是相同的 01/18 00:25
10F:→ zonble:改了文字之後,画面要 redraw,会在下一轮 runloop 才会 01/18 19:53
11F:→ zonble:redraw,但是你的回圈没有进入 runloop 01/18 19:53
12F:→ zonble:所以这个回圈的结果,只会是把 label 的文字改成回圈最後 01/18 19:53
13F:→ zonble:一次设定的效果 01/18 19:54