菜鸟教程小白 发表于 2022-12-13 08:56:13

ios - 在一个 Rectangle 中绘制一个 NSString 的对象。


                                            <p><p>我正在尝试通过 <code>drawInRect:withAttributes:</code> 方法将字符串放入矩形。官方文档写道:“在当前聚焦的 UIView 的指定矩形内,用给定属性的字体和其他显示特征绘制接收器。” </p>

<p>这个 Action 应该在一个按钮事件上完成。但它根本不起作用。什么都没有显示。
我使用的代码:</p>

<pre><code>- (IBAction)buttonPressed:(id)sender
{
    // some area on the top (a part of UIView)
    CGRect rect = CGRectMake(50, 50, 100, 100);

    // my text
    NSString *str = @&#34;Eh, what&#39;s wrong with this code?&#34;;

    // crappy attributes
    NSDictionary *attributes = @{NSFontAttributeName: };

    // and finally passing a message
    ;
}
</code></pre>

<p>是否有特定类型的区域可用于在矩形中绘制字符串?或者是否可以在我想要的矩形中绘制一个字符串?请帮助我更好地理解它! </p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><blockquote>
<p>But it doesn&#39;t work at all. Nothing is shown.</p>
</blockquote>

<p>这是因为在您运行该代码时没有设置绘图上下文。您将绘图视为您可以随时做的事情,但实际上绘图是您应该只在系统要求您时才应该做的事情。其他时候,你应该记住你想画什么,到时候再画。</p>

<p>绘画的“时间”是什么时候?这是调用 View 的 <code>-drawRect:</code> 方法的时候。由于您的方法是一个 Action ,看起来您可能正在尝试在 ViewController 中进行绘图。你想要做的是继承 <code>UIView</code> 并覆盖 <code>-drawRect:</code> 来绘制你想要的东西。</p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 在一个 Rectangle 中绘制一个 NSString 的对象。,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/25388128/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/25388128/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 在一个 Rectangle 中绘制一个 NSString 的对象。