| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384 |
- /************************************************************
- * * Hyphenate CONFIDENTIAL
- * __________________
- * Copyright (C) 2016 Hyphenate Inc. All rights reserved.
- *
- * NOTICE: All information contained herein is, and remains
- * the property of Hyphenate Inc.
- * Dissemination of this information or reproduction of this material
- * is strictly forbidden unless prior written permission is obtained
- * from Hyphenate Inc.
- */
- #import "EaseBubbleView.h"
- #import "EaseBubbleView+Text.h"
- #import "EaseBubbleView+Image.h"
- #import "EaseBubbleView+Location.h"
- #import "EaseBubbleView+Voice.h"
- #import "EaseBubbleView+Video.h"
- #import "EaseBubbleView+File.h"
- @interface EaseBubbleView()
- @property (nonatomic) NSLayoutConstraint *marginTopConstraint;
- @property (nonatomic) NSLayoutConstraint *marginBottomConstraint;
- @property (nonatomic) NSLayoutConstraint *marginLeftConstraint;
- @property (nonatomic) NSLayoutConstraint *marginRightConstraint;
- @end
- @implementation EaseBubbleView
- @synthesize backgroundImageView = _backgroundImageView;
- @synthesize margin = _margin;
- - (instancetype)initWithMargin:(UIEdgeInsets)margin
- isSender:(BOOL)isSender
- {
- self = [super init];
- if (self) {
- _isSender = isSender;
- _margin = margin;
-
- _marginConstraints = [NSMutableArray array];
- }
-
- return self;
- }
- #pragma mark - Setup Constraints
- /*!
- @method
- @brief 设置气泡背景图片的约束
- @discussion
- @result
- */
- - (void)_setupBackgroundImageViewConstraints
- {
- [self addConstraint:[NSLayoutConstraint constraintWithItem:_backgroundImageView attribute:NSLayoutAttributeTop relatedBy:NSLayoutRelationEqual toItem:self attribute:NSLayoutAttributeTop multiplier:1.0 constant:0]];
- [self addConstraint:[NSLayoutConstraint constraintWithItem:_backgroundImageView attribute:NSLayoutAttributeBottom relatedBy:NSLayoutRelationEqual toItem:self attribute:NSLayoutAttributeBottom multiplier:1.0 constant:0]];
- [self addConstraint:[NSLayoutConstraint constraintWithItem:_backgroundImageView attribute:NSLayoutAttributeCenterY relatedBy:NSLayoutRelationEqual toItem:self attribute:NSLayoutAttributeCenterY multiplier:1.0 constant:0]];
- [self addConstraint:[NSLayoutConstraint constraintWithItem:_backgroundImageView attribute:NSLayoutAttributeRight relatedBy:NSLayoutRelationEqual toItem:self attribute:NSLayoutAttributeRight multiplier:1.0 constant:0]];
- [self addConstraint:[NSLayoutConstraint constraintWithItem:_backgroundImageView attribute:NSLayoutAttributeLeft relatedBy:NSLayoutRelationEqual toItem:self attribute:NSLayoutAttributeLeft multiplier:1.0 constant:0]];
- }
- #pragma mark - getter
- - (UIImageView *)backgroundImageView
- {
- if (_backgroundImageView == nil) {
- _backgroundImageView = [[UIImageView alloc] init];
- _backgroundImageView.translatesAutoresizingMaskIntoConstraints = NO;
- _backgroundImageView.backgroundColor = [UIColor clearColor];
- [self addSubview:_backgroundImageView];
- [self _setupBackgroundImageViewConstraints];
- }
-
- return _backgroundImageView;
- }
- @end
|