我有一个困扰我一段时间的问题。我有一个iPhone sdk的自定义控件。当用户触摸控件时,我想在用户触摸位置上方绘制一个小气泡,其中包含一些信息。有点像卡通片中的思想泡泡。
最初我通过向控件添加UIView子视图来完成它。但是,如果我使用我无法控制z顺序的控件,例如在表格视图中,那么将在其他控件下绘制气泡。
我环顾四周,但我不确定如何解决这个问题。我读过的所有内容似乎表明你需要知道控件的树形结构。理想情况下,我想将它应用于整个窗口上的某个层,但我不确定如何。我也看看核心图形,但看不出任何明显的答案。
有没有人有任何想法,或许他们可以指出我会有所帮助。
由于
答案 0 :(得分:1)
如果要将UIView添加到“顶部窗口”,可以使用应用程序UIWindow。
UIWindow是UIView的子类,因此您只需使用- (void)addSubview:(UIView *)view
将新视图添加到窗口中。
[[UIApplication sharedApplication] keyWindow] addSubview:yourView];
答案 1 :(得分:0)
您可以尝试将其添加为窗口的子视图,但我认为这不是最合适的解决方案。
就个人而言,我会将我的控件作为子视图添加到任何视图(可能是表格单元格),然后告诉该视图将您的控件带到前面。
[tablecell bringSubviewToFront:myControl];
这样,当你显示你的泡泡时,它就会显示出来。