菜鸟教程小白 发表于 2022-12-12 23:35:04

ios - 具有动态 UILabel 的 UITableViewCell 的动态高度


                                            <p><p>我有一个 UITableViewController,它显示了一个自定义 UITableViewCell(继承自 UITableViewCell)。同一个 UITableViewCell 有一个 UILabel 可以有可变长度的文本。我面临的挑战是如何在我的 UITableViewController 中访问这个 UILabel,以便我可以在 heightForRowAtIndexPath 中设置正确的单元格高度。 </p>

<p>或者在旁注中,我该如何解决我的标签动态大小的问题。</p>

<p>谢谢</p>

<p>这是我自定义 UITableViewCell 的代码:</p>

<p>标题:</p>

<pre><code>#import &lt;UIKit/UIKit.h&gt;

@interface MessagesCustomViewCell : UITableViewCell

@property (nonatomic, weak) IBOutlet UILabel *message;   &lt;---- need to access this

@end
</code></pre>

<p>实现:</p>

<pre><code>#import &#34;MessagesCustomViewCell.h&#34;

@implementation MessagesCustomViewCell
@synthesize message=_message;

- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier
{
    self = ;
    if (self) {
      // Initialization code
    }
    return self;
}

- (void)setSelected:(BOOL)selected animated:(BOOL)animated
{
    ;

    // Configure the view for the selected state
}

@end
</code></pre></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>使用Ivan提到的测量字体大小的方法,您可以在MessagesCustomViewCell中额外添加一个类方法,</p>

<pre><code>+ (CGFloat)heightForMessage:(NSString *)message;
</code></pre>

<p>您在其中使用适当的 UILabel 宽度/高度、字体等计算消息的高度。这可以从 heightForRowAtIndexPath: 中调用:</p>

<pre><code>NSString *dynamicString = ;
CGFloat height = ;
return height;
</code></pre></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 具有动态 UILabel 的 UITableViewCell 的动态高度,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/13125488/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/13125488/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 具有动态 UILabel 的 UITableViewCell 的动态高度