From 7b02207537d35bfa1714bf8beafc921f717d100a Mon Sep 17 00:00:00 2001
From: 单军华
Date: Wed, 11 Jul 2018 10:47:42 +0800
Subject: [PATCH] 首次上传
---
screendisplay/Pods/ZJScrollPageView/ZJScrollPageView/ZJScrollPageView/ZJTitleView.m | 215 +++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 215 insertions(+), 0 deletions(-)
diff --git a/screendisplay/Pods/ZJScrollPageView/ZJScrollPageView/ZJScrollPageView/ZJTitleView.m b/screendisplay/Pods/ZJScrollPageView/ZJScrollPageView/ZJScrollPageView/ZJTitleView.m
new file mode 100755
index 0000000..6f43124
--- /dev/null
+++ b/screendisplay/Pods/ZJScrollPageView/ZJScrollPageView/ZJScrollPageView/ZJTitleView.m
@@ -0,0 +1,215 @@
+//
+// ZJCustomLabel.m
+// ZJScrollPageView
+//
+// Created by jasnig on 16/5/6.
+// Copyright �� 2016��� ZeroJ. All rights reserved.
+//
+
+#import "ZJTitleView.h"
+
+@interface ZJTitleView() {
+ CGSize _titleSize;
+ CGFloat _imageHeight;
+ CGFloat _imageWidth;
+ BOOL _isShowImage;
+}
+@property (strong, nonatomic) UIImageView *imageView;
+@property (strong, nonatomic) UILabel *label;
+@property (strong, nonatomic) UIView *contentView;
+/** ������������ */
+// TODO: - ������badge
+@property (nonatomic) UIView *badgeView;
+
+@end
+
+@implementation ZJTitleView
+- (instancetype)init {
+ self = [self initWithFrame:CGRectZero];
+ return self;
+}
+
+- (instancetype)initWithFrame:(CGRect)frame {
+ if (self = [super initWithFrame:frame]) {
+ self.currentTransformSx = 1.0;
+ self.userInteractionEnabled = YES;
+ self.backgroundColor = [UIColor clearColor];
+ _isShowImage = NO;
+ [self addSubview:self.label];
+
+ }
+
+ return self;
+}
+
+- (void)setCurrentTransformSx:(CGFloat)currentTransformSx {
+ _currentTransformSx = currentTransformSx;
+ self.transform = CGAffineTransformMakeScale(currentTransformSx, currentTransformSx);
+}
+
+
+- (void)layoutSubviews {
+ [super layoutSubviews];
+
+ if (!_isShowImage) {
+ self.label.frame = self.bounds;
+ }
+}
+
+- (void)adjustSubviewFrame {
+ _isShowImage = YES;
+
+ CGRect contentViewFrame = self.bounds;
+ contentViewFrame.size.width = [self titleViewWidth];
+ contentViewFrame.origin.x = (self.frame.size.width - contentViewFrame.size.width)/2;
+ self.contentView.frame = contentViewFrame;
+ self.label.frame = self.contentView.bounds;
+
+ [self addSubview:self.contentView];
+ [self.label removeFromSuperview];
+ [self.contentView addSubview:self.label];
+ [self.contentView addSubview:self.imageView];
+
+ switch (self.imagePosition) {
+ case TitleImagePositionTop: {
+ CGRect contentViewFrame = self.contentView.frame;
+ contentViewFrame.size.height = _imageHeight + _titleSize.height;
+ contentViewFrame.origin.y = (self.frame.size.height - contentViewFrame.size.height)*0.5;
+ self.contentView.frame = contentViewFrame;
+
+ self.imageView.frame = CGRectMake(0, 0, _imageWidth, _imageHeight);
+ CGPoint center = self.imageView.center;
+ center.x = self.label.center.x;
+ self.imageView.center = center;
+
+ CGFloat labelHeight = self.contentView.frame.size.height - _imageHeight;
+ CGRect labelFrame = self.label.frame;
+ labelFrame.origin.y = _imageHeight;
+ labelFrame.size.height = labelHeight;
+ self.label.frame = labelFrame;
+ break;
+ }
+ case TitleImagePositionLeft: {
+
+ CGRect labelFrame = self.label.frame;
+ labelFrame.origin.x = _imageWidth;
+ labelFrame.size.width = self.contentView.frame.size.width - _imageWidth;
+ self.label.frame = labelFrame;
+
+ CGRect imageFrame = CGRectZero;
+ imageFrame.size.height = _imageHeight;
+ imageFrame.size.width = _imageWidth;
+ imageFrame.origin.y = (self.contentView.frame.size.height - imageFrame.size.height)/2;
+ self.imageView.frame = imageFrame;
+
+ break;
+ }
+ case TitleImagePositionRight: {
+ CGRect labelFrame = self.label.frame;
+ labelFrame.size.width = self.contentView.frame.size.width - _imageWidth;
+ self.label.frame = labelFrame;
+
+ CGRect imageFrame = CGRectZero;
+ imageFrame.origin.x = CGRectGetMaxX(self.label.frame);
+ imageFrame.size.height = _imageHeight;
+ imageFrame.size.width = _imageWidth;
+ imageFrame.origin.y = (self.contentView.frame.size.height - imageFrame.size.height)/2;
+ self.imageView.frame = imageFrame;
+ break;
+ }
+ case TitleImagePositionCenter:
+
+ self.imageView.frame = self.contentView.bounds;
+ [self.label removeFromSuperview];
+ break;
+ default:
+ break;
+ }
+
+}
+
+
+
+- (CGFloat)titleViewWidth {
+ CGFloat width = 0.0f;
+ switch (self.imagePosition) {
+ case TitleImagePositionLeft:
+ width = _imageWidth + _titleSize.width;
+ break;
+ case TitleImagePositionRight:
+ width = _imageWidth + _titleSize.width;
+ break;
+ case TitleImagePositionCenter:
+ width = _imageWidth;
+ break;
+ default:
+ width = _titleSize.width;
+ break;
+ }
+
+ return width;
+}
+
+
+- (void)setNormalImage:(UIImage *)normalImage {
+ _normalImage = normalImage;
+ _imageWidth = normalImage.size.width;
+ _imageHeight = normalImage.size.height;
+ self.imageView.image = normalImage;
+}
+
+- (void)setSelectedImage:(UIImage *)selectedImage {
+ _selectedImage = selectedImage;
+ self.imageView.highlightedImage = selectedImage;
+}
+
+- (void)setFont:(UIFont *)font {
+ _font = font;
+ self.label.font = font;
+}
+
+- (void)setText:(NSString *)text {
+ _text = text;
+ self.label.text = text;
+ CGRect bounds = [text boundingRectWithSize:CGSizeMake(MAXFLOAT, 0.0) options:NSStringDrawingUsesLineFragmentOrigin attributes:@{NSFontAttributeName: self.label.font} context:nil];
+ _titleSize = bounds.size;
+
+}
+
+- (void)setTextColor:(UIColor *)textColor {
+ _textColor = textColor;
+ self.label.textColor = textColor;
+
+}
+
+- (void)setSelected:(BOOL)selected {
+ _selected = selected;
+ self.imageView.highlighted = selected;
+}
+
+- (UIImageView *)imageView {
+ if (_imageView == nil) {
+ _imageView = [[UIImageView alloc] init];
+ _imageView.contentMode = UIViewContentModeCenter;
+ }
+ return _imageView;
+}
+
+- (UILabel *)label {
+ if (_label == nil) {
+ _label = [[UILabel alloc] init];
+ _label.textAlignment = NSTextAlignmentCenter;
+ }
+ return _label;
+}
+
+- (UIView *)contentView {
+ if (!_contentView) {
+ _contentView = [UIView new];
+ }
+ return _contentView;
+}
+
+
+
+@end
--
Gitblit v1.8.0