如何在AutoLayout的帮助下在自定义UITableviewCell中添加自定义UIView(xib)?

时间:2015-06-03 05:53:08

标签: ios objective-c uitableview uiview autolayout

我有一个View Controller,其中有一个UITableView

我在UITableviewCell中使用了带有xib的自定义UITableView

现在我有一个带有xib的UIView,我希望借助AutoLayout在自定义UIView's中添加UITableViewCell个对象。

我在自定义UIView中成功添加了UITableViewCell,但UIView非常它不适合我的自定义< / strong> UITableViewCell

我知道UIView可以在AutoLayout的帮助下适当地适应自定义UITableViewCell,但我不知道如何,因为我是AutoLayout的新手。

在我的自定义UITableViewCell

CustomAlertCell.m//this is my custom UITableViewCell class

-(void)addCustomView_ForRow:(int)theRow
{
    JobAlertCell_View *vwJob = [[JobAlertCell_View alloc] initFromNibFile:@"JobAlertCell_View"];
   vwJob.frame = CGRectMake(0, 118, vwJob.frame.size.width, vwJob.frame.size.height);
   [self addSubview:vwJob];
}

这是我的vwJob.frame.size.height = 90,但在设备中它比我想要的尺寸大得多。

感谢。

1 个答案:

答案 0 :(得分:1)

您可以使用以下代码

添加宽度和高度约束
    -(void)addCustomView_ForRow:(int)theRow
    {
       JobAlertCell_View *vwJob = [[JobAlertCell_View alloc] initFromNibFile:@"JobAlertCell_View"];
       [self addSubview:vwJob];

        [self addConstraint:[NSLayoutConstraint constraintWithItem:vwJob
                                                       attribute:NSLayoutAttributeHeight
                                                       relatedBy:NSLayoutRelationEqual
                                                          toItem:nil
                                                       attribute:NSLayoutAttributeNotAnAttribute
                                                      multiplier:1.0
                                                        constant:100.0]];
        [self addConstraint:[NSLayoutConstraint constraintWithItem:vwJob
                                                       attribute:NSLayoutAttributeWidth
                                                       relatedBy:NSLayoutRelationEqual
                                                          toItem:nil
                                                       attribute:NSLayoutAttributeNotAnAttribute
                                                      multiplier:1.0
                                                        constant:100.0]];
        [self layoutIfNeeded];

    }

<强>来源:

https://codehappily.wordpress.com/2013/09/21/constant-height-width-constraint-autolayout/ https://codehappily.wordpress.com/2013/10/09/ios-how-to-programmatically-add-auto-layout-constraints-for-a-view-that-will-fit-its-superview/

希望它可以帮助你......!