         super.layoutSubviews()
         let borderOffset: CGFloat = 20.0
         
+        var labelSize = propertyTitle.sizeThatFits(CGSize(width: contentView.bounds.size.width - 2*borderOffset, height: 2000.0))
+        propertyTitle.frame = (CGRect(x: borderOffset, y: (contentView.bounds.size.height-labelSize.height)/2.0, width: labelSize.width, height: labelSize.height))
         
-        var labelSize = propertyTitle.sizeThatFits(CGSize(width: self.bounds.size.width - 2*borderOffset, height: 2000.0))
-        propertyTitle.frame = (CGRect(x: borderOffset, y: (self.bounds.size.height-labelSize.height)/2.0, width: labelSize.width, height: labelSize.height))
-        
-        let labelWidth = self.bounds.size.width-propertyTitle.bounds.size.width-2*borderOffset
+        let labelWidth = contentView.bounds.size.width-propertyTitle.bounds.size.width-2*borderOffset
         labelSize = propertyValueTextField.sizeThatFits(CGSize(width: labelWidth, height: 2000.0))
-        propertyValueTextField.frame = (CGRect(x:self.bounds.size.width-labelWidth-borderOffset, y: (self.bounds.size.height-labelSize.height)/2, width:labelWidth, height: labelSize.height))
+        propertyValueTextField.frame = (CGRect(x:contentView.bounds.size.width-labelWidth-borderOffset, y: (contentView.bounds.size.height-labelSize.height)/2, width:labelWidth, height: labelSize.height))
     }
     
     //MARK: private method

    override init(style: UITableViewCellStyle, reuseIdentifier: String?) {
        super.init(style: style, reuseIdentifier: reuseIdentifier)
        selectionStyle = .none
    }
    
    required init?(coder aDecoder: NSCoder) {

        if  property.type != .bool {
            self.delegate.textFieldDidFinishEdit(textField.text!, property: self.property)
        }
    }
}

