问题标签 [drawrect]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
iphone - 试图添加一个子视图,drawRect 没有被调用
我正在尝试将子视图添加到我的主视图中。这是我的 viewController 中的相关代码:
myView 中的 drawRect 不会被调用。
但是,如果我使用 MyUIViewSubclass 作为 viewController 的主视图(在 Interface Builder 中设置它),drawRect 会被调用。
我需要做什么才能在我的 subView 中调用 drawRect?
iphone - 从 drawRect 在 UIView 的边界之外绘制
我的问题与这个Not draw outside bounds when clipToBounds=NO非常相似,它没有收到明确的答案。
基本上我有一个 UIView,我想从它的中心画一条线,到屏幕的边缘。计算这些点的位置很容易,使用[self convertPoint:(CGPoint){0,0} fromView:[self superview]];
(它找到相对于我的视图的超级视图的原点。但是当我从我的视图的 drawRect 中画一条线时:它会在我的视图边界处被剪裁。
有没有办法在我的视野范围之外进行绘制?我尝试更改 clipsToBounds 属性,但似乎没有任何效果。
我无法从超级视图中画线,因为我需要使用多个视图来执行此操作,并且有些视图会在其他视图之前......从超级视图的 drawRect 中找出图层似乎是个坏主意。
同样,我认为我不能只调整视图的边界以包括整个屏幕,因为我的视图需要动态调整大小......边界必须是巨大的(> 20,000 平方)才能工作.
ios - 在不使用 UILabel 的 drawRect: 方法中向 NSString 文本添加阴影
我想为使用 iOS 提供的NSString (UIStringDrawing)
类别方法绘制的文本添加阴影:
显然,没有投影选项。
是的,可以在这里使用 UILabel 并设置阴影属性,但这不会像 UILabel 那样高效,因为任何 UIView 子类(例如 UILabel)都包装了一个 CALayer 对象并且会更重(性能方面)。
这是上下文:
我正在为 UITableViewCell 子类进行自定义绘图,drawRect:
在表格单元格视图上实现,而不是从复合 UIView 子类的 Nib 文件创建表格单元格。
组合一堆 UIView 子类会破坏试图保持这种精简并在表格视图滚动性能中保持在每秒 50-60 帧的目的。
我曾尝试以轻微的偏移量两次绘制字符串。一旦我调整了我要去的单元格的背景颜色上的阴影颜色,这可能会变得可以接受,但它看起来相当笨拙。当然,没有像 UILabel 那样的阴影模糊属性。
我搜索了解决方案,他们要么推荐 UILabel 用法(我已经在上面忽略了,因为我有大约十几个不同的文本元素被合成到表格单元格视图中)或CGContextSetShadow()
. 后者似乎总是在矩形形状的上下文中被建议,并且不一定用于将阴影附加到使用上述 NSStringdrawAtPoint...
方法直接绘制的文本路径上。(我确实尝试过,但它似乎没有用(即没有任何改变);我是 Core Graphics 绘图的新手)。
建议?
iphone - 在 UIView 中绘制以及 addSubview
嗨,我想使用 Interface Builder 在 UIView 上添加两个按钮,并在这两个按钮之间画一条线。这怎么可能?请建议。谢谢
ios - drawRect:速度和 CGContextDrawRadialGradient(超慢?)
我的UIView
子类drawRect:
功能有问题。我用CGContextDrawRadialGradient()
它,它。当用户拖动我的 UIView 时,如果我包含渐变,它很难跟上。
使用 Time Profiler,我发现我 98% 的时间都花在了我的子类' drawRect
: 方法上。
第一:使用渐变的静态图像会更快吗?第二:有什么办法可以加快速度?我可以以某种方式缓存渐变吗?它并没有太大变化,但是当你拖动UIView
.
如果有人知道如何使drawRect:
方法不占用所有 cpu 周期的一般指南,那就太棒了。
iphone - 读/未读单元格(使用drawrect)
我的应用程序将帖子从互联网下载到 UITableViewCell。当用户点击单元格时,我需要将这篇文章设置为已读(如在 Mail.app 上)。我不知道该怎么做。我正在将 url(当用户按下单元格时)添加到数据库(如“url|url|url”),打开详细信息视图。当他返回 UITableView 检查数据库中现有的 url 时。现在表太慢了!你能帮我说一下我可以用什么其他方法来做到这一点?就像在 mail.app 中一样。我在 drawRect 方法中使用自定义单元格和代码。请帮忙
好的。我认为,我的代码很糟糕,你可以理解,我在这里做什么)回答其他问题。我如何更新隐藏的单元格?用户一次只能看到 6 个单元格,我需要更新,例如 10 个单元格。如何?或者,如果它已经存在,如何重新加载单元格?可以说——
现在单元格存在,如果我调用重新加载数据,则不会发生任何事情。并且 reloadCellAtIndexPath 也不起作用,因为单元格具有唯一标识符和 ixists。
我如何重新加载单元格并再次调用 DRAWRECT?))
cocoa-touch - 在 iPad 上绘制大量线条(CGContextBeginPath)
我正在尝试制作一个吸引很多人的 ipad 应用程序,但我的意思是舞台上有很多台词(10.000+)
使用这个简单的 forloop,我的 ipad 在 40~60 秒后崩溃(不显示结果)
这是我的“DrawLine”类:
我怎么解决这个问题?如何在不使 iOS 崩溃的情况下绘制这么多子视图?
非常感谢!!:)
iphone - 为什么我调用 setNeedsDisplay 后我的 UIView 子类不重绘?
我有一个自定义 UIView,它是 UITableViewCell 的子视图。绘制单元格时,我的自定义视图也是如此,在我的 UIView 子类中正确调用 drawRect:。重新加载单元格时,会正确绘制视图(drawRect:
被调用)。
当某个事件发生时(例如计时器),我想重绘视图而不必重新加载整个单元格。(这不是单元格中的唯一视图。)
但是,当我调用setNeedsDisplay
我的子视图时,什么也没有发生。
我猜当我的视图drawRect:
被调用时,生成的图像被缓存在某处的支持中,这样当我调用setNeedsDisplay
该支持时,该支持被重新绘制到屏幕上,但我的drawRect:
调用再也不会被调用。
为什么drawRect:
在创建单元格后不再调用?
编辑:单元格的子视图是从笔尖创建的。即:从 nib 加载 UIViewController,并将其视图添加到 UITableViewCell。
我使用不是从笔尖(由代码创建)加载的自定义视图从头开始制作了一个测试用例,它按预期工作:setNeedsDisplay
导致drawRect:
调用。它必须是在 .xib 文件中设置的东西,或者是在从 nib 加载视图时发生的与视图不同的东西。
uiimage - 显示瓷砖图像时哪种方式更好?
我尝试在瓷砖中显示图像,我认为有一些方法如下,但我不确定哪个更好,虽然我可以尝试所有方法,但我仍然希望我能从经验中获得信息。
- 使用 UIImageView + AnimatedGif 的图块
- 以自定义样式 + AnimatedGif 使用 UIButton 的图块
- 使用 UIWebView 的图块(用于 gif89a)
- 使用 UIView 并绘制 UIImage 的图块
cocoa - setNeedsDisplay:True 除非激活,否则不重绘?
我有一个自定义视图,它是主窗口的子视图。我有一个计时器,它会触发一个 [self setNeedsDisplay:TRUE] 来更新视图上的绘图。但据我所知,如果我将应用程序留在后台并切换到另一个应用程序,它不会反映新的绘图功能,直到我再次单击应用程序。我会错过什么?谢谢你,何塞。