Skip to content

Commit 45c486f

Browse files
author
Hilen
committed
Optimize
1 parent fede5a9 commit 45c486f

24 files changed

+51
-645
lines changed

README.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,9 @@
99
TSWeChat - A [WeChat](https://itunes.apple.com/cn/app/wei/id414478124) alternative, written in Swift.       [中文说明](Chinese_README.md)
1010

1111
## Requirements
12-
- [Cocoapods](https://github.com/CocoaPods/CocoaPods) 0.39.0 +
12+
- [Cocoapods](https://github.com/CocoaPods/CocoaPods) 1.1.1 +
1313
- iOS 8.0+ / Mac OS X 10.9+
14-
- Xcode 7.3+
14+
- Xcode 8.1+
1515

1616

1717
## Features

TSWeChat.xcodeproj/project.pbxproj

-20
Original file line numberDiff line numberDiff line change
@@ -49,12 +49,9 @@
4949
AE8742911C7B3547003A435C /* TSContactTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE87428F1C7B3547003A435C /* TSContactTableViewCell.swift */; };
5050
AE8742921C7B3547003A435C /* TSContactTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = AE8742901C7B3547003A435C /* TSContactTableViewCell.xib */; };
5151
AE8F49AC1C46A905009C1541 /* AboutApp.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE8F499D1C46A905009C1541 /* AboutApp.swift */; };
52-
AE8F49AD1C46A905009C1541 /* CGRect+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE8F499E1C46A905009C1541 /* CGRect+Extension.swift */; };
53-
AE8F49AE1C46A905009C1541 /* Device.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE8F499F1C46A905009C1541 /* Device.swift */; };
5452
AE8F49B01C46A905009C1541 /* NSDictionary+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE8F49A11C46A905009C1541 /* NSDictionary+Extension.swift */; };
5553
AE8F49B21C46A905009C1541 /* NSObject+String.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE8F49A31C46A905009C1541 /* NSObject+String.swift */; };
5654
AE8F49B31C46A905009C1541 /* UIBarButtonItem+Block.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE8F49A41C46A905009C1541 /* UIBarButtonItem+Block.swift */; };
57-
AE8F49B51C46A905009C1541 /* UIScreen+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE8F49A61C46A905009C1541 /* UIScreen+Extension.swift */; };
5855
AE8F49B61C46A905009C1541 /* UISearchBar+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE8F49A71C46A905009C1541 /* UISearchBar+Extension.swift */; };
5956
AE8F49B91C46A905009C1541 /* UIView+Frame.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE8F49AA1C46A905009C1541 /* UIView+Frame.swift */; };
6057
AE8F49BA1C46A905009C1541 /* UIViewController+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE8F49AB1C46A905009C1541 /* UIViewController+Extension.swift */; };
@@ -90,7 +87,6 @@
9087
AEE69A5A1C7CB07C00C69224 /* Expression.plist in Resources */ = {isa = PBXBuildFile; fileRef = AEE69A591C7CB07C00C69224 /* Expression.plist */; };
9188
AEE69B251C7CB2AF00C69224 /* Expression.bundle in Resources */ = {isa = PBXBuildFile; fileRef = AEE69B241C7CB2AF00C69224 /* Expression.bundle */; };
9289
AEE69B621C81997500C69224 /* PHAsset+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = AEE69B5F1C81997500C69224 /* PHAsset+Extension.swift */; };
93-
AEE69B661C81999E00C69224 /* UIImage+Orientation.swift in Sources */ = {isa = PBXBuildFile; fileRef = AEE69B651C81999E00C69224 /* UIImage+Orientation.swift */; };
9490
AEE69BA01C81B58600C69224 /* TSChatBaseCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = AEE69B691C81B58600C69224 /* TSChatBaseCell.swift */; };
9591
AEE69BA11C81B58600C69224 /* TSChatCellDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = AEE69B6A1C81B58600C69224 /* TSChatCellDelegate.swift */; };
9692
AEE69BA21C81B58600C69224 /* TSChatImageCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = AEE69B6B1C81B58600C69224 /* TSChatImageCell.swift */; };
@@ -138,7 +134,6 @@
138134
AEE69C121C81B66100C69224 /* TSChatSubModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = AEE69C111C81B66100C69224 /* TSChatSubModel.swift */; };
139135
AEE69C141C81B68500C69224 /* TSLogger.swift in Sources */ = {isa = PBXBuildFile; fileRef = AEE69C131C81B68500C69224 /* TSLogger.swift */; };
140136
AEE69C161C81B6DD00C69224 /* TSChatModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = AEE69C151C81B6DD00C69224 /* TSChatModel.swift */; };
141-
AEE69C181C81B92700C69224 /* UILabel+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = AEE69C171C81B92700C69224 /* UILabel+Extension.swift */; };
142137
AEE69C1B1C81B97F00C69224 /* TSWebViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = AEE69C1A1C81B97F00C69224 /* TSWebViewController.swift */; };
143138
AEE69C1F1C81BF1F00C69224 /* TSConfig.swift in Sources */ = {isa = PBXBuildFile; fileRef = AEE69C1E1C81BF1F00C69224 /* TSConfig.swift */; };
144139
/* End PBXBuildFile section */
@@ -197,12 +192,9 @@
197192
AE87428F1C7B3547003A435C /* TSContactTableViewCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TSContactTableViewCell.swift; sourceTree = "<group>"; };
198193
AE8742901C7B3547003A435C /* TSContactTableViewCell.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = TSContactTableViewCell.xib; sourceTree = "<group>"; };
199194
AE8F499D1C46A905009C1541 /* AboutApp.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AboutApp.swift; sourceTree = "<group>"; };
200-
AE8F499E1C46A905009C1541 /* CGRect+Extension.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "CGRect+Extension.swift"; sourceTree = "<group>"; };
201-
AE8F499F1C46A905009C1541 /* Device.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Device.swift; sourceTree = "<group>"; };
202195
AE8F49A11C46A905009C1541 /* NSDictionary+Extension.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "NSDictionary+Extension.swift"; sourceTree = "<group>"; };
203196
AE8F49A31C46A905009C1541 /* NSObject+String.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "NSObject+String.swift"; sourceTree = "<group>"; };
204197
AE8F49A41C46A905009C1541 /* UIBarButtonItem+Block.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "UIBarButtonItem+Block.swift"; sourceTree = "<group>"; };
205-
AE8F49A61C46A905009C1541 /* UIScreen+Extension.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "UIScreen+Extension.swift"; sourceTree = "<group>"; };
206198
AE8F49A71C46A905009C1541 /* UISearchBar+Extension.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "UISearchBar+Extension.swift"; sourceTree = "<group>"; };
207199
AE8F49AA1C46A905009C1541 /* UIView+Frame.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "UIView+Frame.swift"; sourceTree = "<group>"; };
208200
AE8F49AB1C46A905009C1541 /* UIViewController+Extension.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "UIViewController+Extension.swift"; sourceTree = "<group>"; };
@@ -243,7 +235,6 @@
243235
AEE69A591C7CB07C00C69224 /* Expression.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Expression.plist; sourceTree = "<group>"; };
244236
AEE69B241C7CB2AF00C69224 /* Expression.bundle */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.plug-in"; path = Expression.bundle; sourceTree = "<group>"; };
245237
AEE69B5F1C81997500C69224 /* PHAsset+Extension.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "PHAsset+Extension.swift"; sourceTree = "<group>"; };
246-
AEE69B651C81999E00C69224 /* UIImage+Orientation.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "UIImage+Orientation.swift"; sourceTree = "<group>"; };
247238
AEE69B691C81B58600C69224 /* TSChatBaseCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TSChatBaseCell.swift; sourceTree = "<group>"; };
248239
AEE69B6A1C81B58600C69224 /* TSChatCellDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TSChatCellDelegate.swift; sourceTree = "<group>"; };
249240
AEE69B6B1C81B58600C69224 /* TSChatImageCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TSChatImageCell.swift; sourceTree = "<group>"; };
@@ -291,7 +282,6 @@
291282
AEE69C111C81B66100C69224 /* TSChatSubModel.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TSChatSubModel.swift; sourceTree = "<group>"; };
292283
AEE69C131C81B68500C69224 /* TSLogger.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TSLogger.swift; sourceTree = "<group>"; };
293284
AEE69C151C81B6DD00C69224 /* TSChatModel.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TSChatModel.swift; sourceTree = "<group>"; };
294-
AEE69C171C81B92700C69224 /* UILabel+Extension.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "UILabel+Extension.swift"; sourceTree = "<group>"; };
295285
AEE69C1A1C81B97F00C69224 /* TSWebViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TSWebViewController.swift; sourceTree = "<group>"; };
296286
AEE69C1E1C81BF1F00C69224 /* TSConfig.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TSConfig.swift; sourceTree = "<group>"; };
297287
EEDE4F6B7BF2C153C58B4744 /* Pods_TSWeChat.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_TSWeChat.framework; sourceTree = BUILT_PRODUCTS_DIR; };
@@ -391,17 +381,12 @@
391381
AE8F499C1C46A905009C1541 /* Helpers */ = {
392382
isa = PBXGroup;
393383
children = (
394-
AEE69C171C81B92700C69224 /* UILabel+Extension.swift */,
395384
AE8F499D1C46A905009C1541 /* AboutApp.swift */,
396-
AE8F499E1C46A905009C1541 /* CGRect+Extension.swift */,
397-
AE8F499F1C46A905009C1541 /* Device.swift */,
398385
AE8742781C7AE48A003A435C /* NSDate+Extension.swift */,
399386
AE8F49A11C46A905009C1541 /* NSDictionary+Extension.swift */,
400387
AE8F49A31C46A905009C1541 /* NSObject+String.swift */,
401388
AEE69B5F1C81997500C69224 /* PHAsset+Extension.swift */,
402389
AE8F49A41C46A905009C1541 /* UIBarButtonItem+Block.swift */,
403-
AEE69B651C81999E00C69224 /* UIImage+Orientation.swift */,
404-
AE8F49A61C46A905009C1541 /* UIScreen+Extension.swift */,
405390
AE8F49A71C46A905009C1541 /* UISearchBar+Extension.swift */,
406391
AE8F49AA1C46A905009C1541 /* UIView+Frame.swift */,
407392
AE8F49AB1C46A905009C1541 /* UIViewController+Extension.swift */,
@@ -894,7 +879,6 @@
894879
files = (
895880
AE8F49BA1C46A905009C1541 /* UIViewController+Extension.swift in Sources */,
896881
AE8742751C7AE23E003A435C /* TSModel.swift in Sources */,
897-
AE8F49AE1C46A905009C1541 /* Device.swift in Sources */,
898882
AEBEE5B01C8754BD00956B0C /* TSChatButton+UI.swift in Sources */,
899883
AEE69BB71C81B58600C69224 /* TSChatEmojiDictionary.swift in Sources */,
900884
AE8F49B91C46A905009C1541 /* UIView+Frame.swift in Sources */,
@@ -944,7 +928,6 @@
944928
AE8742611C7AE0F1003A435C /* TSProgressHUD.swift in Sources */,
945929
AEE69BB61C81B58600C69224 /* ImageFilesManager.swift in Sources */,
946930
AEE69C141C81B68500C69224 /* TSLogger.swift in Sources */,
947-
AE8F49AD1C46A905009C1541 /* CGRect+Extension.swift in Sources */,
948931
AEE69BCE1C81B58600C69224 /* TSChatShareMoreCollectionViewCell.swift in Sources */,
949932
AE8742741C7AE23E003A435C /* TSMessageModel.swift in Sources */,
950933
AEE69BBB1C81B58600C69224 /* UITableView+ChatAdditions.swift in Sources */,
@@ -962,9 +945,7 @@
962945
AEE69BC51C81B58600C69224 /* TSChatViewController.swift in Sources */,
963946
AE040A9F1C990B4A003A764D /* TSLocationManager.swift in Sources */,
964947
AEE69BB81C81B58600C69224 /* TSChatTextParser.swift in Sources */,
965-
AE8F49B51C46A905009C1541 /* UIScreen+Extension.swift in Sources */,
966948
AE92B7881C3FF7C900968A3A /* TSAppMacro.swift in Sources */,
967-
AEE69C181C81B92700C69224 /* UILabel+Extension.swift in Sources */,
968949
AEE69BD31C81B58600C69224 /* TSChatVoiceIndicatorView.swift in Sources */,
969950
AEBEE5AE1C8754BD00956B0C /* TSChatSystemEdgeLabel.swift in Sources */,
970951
AEE69BB91C81B58600C69224 /* TSYYTextLinePositionModifier.swift in Sources */,
@@ -977,7 +958,6 @@
977958
AEE69C1F1C81BF1F00C69224 /* TSConfig.swift in Sources */,
978959
AEE69BAD1C81B58600C69224 /* AudioDelegate.swift in Sources */,
979960
AEBEE5A21C87087600956B0C /* TSResponseSerializer.swift in Sources */,
980-
AEE69B661C81999E00C69224 /* UIImage+Orientation.swift in Sources */,
981961
AEE69BC91C81B58600C69224 /* TSChatEmotionCell.swift in Sources */,
982962
AE40FD241C5B644300CB7339 /* TSImageTextTableViewCell.swift in Sources */,
983963
AEE69C161C81B6DD00C69224 /* TSChatModel.swift in Sources */,

TSWeChat/Classes/Chat/Cells/TSChatBaseCell.swift

+1-1
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ class TSChatBaseCell: UITableViewCell {
7676
}
7777
if model.fromMe {
7878
self.nicknameLabel.height = 0
79-
self.avatarImageView.left = UIScreen.width - kChatAvatarMarginLeft - kChatAvatarWidth
79+
self.avatarImageView.left = UIScreen.ts_width - kChatAvatarMarginLeft - kChatAvatarWidth
8080
} else {
8181
self.nicknameLabel.height = 0
8282
self.avatarImageView.left = kChatAvatarMarginLeft

TSWeChat/Classes/Chat/Cells/TSChatImageCell.swift

+1-1
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ class TSChatImageCell: TSChatBaseCell {
7474

7575
if model.fromMe {
7676
//value = 屏幕宽 - 头像的边距10 - 头像宽 - 气泡距离头像的 gap 值 - 图片宽
77-
self.chatImageView.left = UIScreen.width - kChatAvatarMarginLeft - kChatAvatarWidth - kChatBubbleMaginLeft - self.chatImageView.width
77+
self.chatImageView.left = UIScreen.ts_width - kChatAvatarMarginLeft - kChatAvatarWidth - kChatBubbleMaginLeft - self.chatImageView.width
7878
} else {
7979
//value = 距离屏幕左边的距离
8080
self.chatImageView.left = kChatBubbleLeft

TSWeChat/Classes/Chat/Cells/TSChatSystemCell.swift

+3-3
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
import UIKit
1010

1111
private let kChatInfoFont: UIFont = UIFont.systemFont(ofSize: 13)
12-
private let kChatInfoLabelMaxWdith : CGFloat = UIScreen.width - 40*2
12+
private let kChatInfoLabelMaxWdith : CGFloat = UIScreen.ts_width - 40*2
1313
private let kChatInfoLabelPaddingLeft: CGFloat = 8 //左右分别留出 8 像素的留白
1414
private let kChatInfoLabelPaddingTop: CGFloat = 4 //上下分别留出 4 像素的留白
1515
private let kChatInfoLabelMarginTop: CGFloat = 3 //距离顶部
@@ -46,10 +46,10 @@ class TSChatSystemCell: UITableViewCell {
4646
guard let model = self.model else {
4747
return
4848
}
49-
self.infomationLabel.setFrameWithString(model.messageContent!, width: kChatInfoLabelMaxWdith)
49+
self.infomationLabel.ts_setFrameWithString(model.messageContent!, width: kChatInfoLabelMaxWdith)
5050
self.infomationLabel.width = self.infomationLabel.width + kChatInfoLabelPaddingLeft*2 //左右的留白
5151
self.infomationLabel.height = self.infomationLabel.height + kChatInfoLabelPaddingTop*2 //上下的留白
52-
self.infomationLabel.left = (UIScreen.width - self.infomationLabel.width) / 2
52+
self.infomationLabel.left = (UIScreen.ts_width - self.infomationLabel.width) / 2
5353
self.infomationLabel.top = kChatInfoLabelMarginTop
5454
}
5555

TSWeChat/Classes/Chat/Cells/TSChatTextCell.swift

+2-2
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ import UIKit
1010
import YYText
1111

1212
let kChatTextLeft: CGFloat = 72 //消息在左边的时候, 文字距离屏幕左边的距离
13-
let kChatTextMaxWidth: CGFloat = UIScreen.width - kChatTextLeft - 82 //消息在右边, 70:文本离屏幕左的距离, 82:文本离屏幕右的距离
13+
let kChatTextMaxWidth: CGFloat = UIScreen.ts_width - kChatTextLeft - 82 //消息在右边, 70:文本离屏幕左的距离, 82:文本离屏幕右的距离
1414
let kChatTextMarginTop: CGFloat = 12 //文字的顶部和气泡顶部相差 12 像素
1515
let kChatTextMarginBottom: CGFloat = 11 //文字的底部和气泡底部相差 11 像素
1616
let kChatTextMarginLeft: CGFloat = 17 //文字的左边 和气泡的左边相差 17 ,包括剪头部门
@@ -84,7 +84,7 @@ class TSChatTextCell: TSChatBaseCell {
8484

8585
if model.fromMe {
8686
//value = 屏幕宽 - 头像的边距10 - 头像宽 - 气泡距离头像的 gap 值 - (文字宽 - 2倍的文字和气泡的左右距离 , 或者是最小的气泡图片距离)
87-
self.bubbleImageView.left = UIScreen.width - kChatAvatarMarginLeft - kChatAvatarWidth - kChatBubbleMaginLeft - max(self.contentLabel.width + kChatBubbleWidthBuffer, kChatBubbleImageViewWidth)
87+
self.bubbleImageView.left = UIScreen.ts_width - kChatAvatarMarginLeft - kChatAvatarWidth - kChatBubbleMaginLeft - max(self.contentLabel.width + kChatBubbleWidthBuffer, kChatBubbleImageViewWidth)
8888
} else {
8989
//value = 距离屏幕左边的距离
9090
self.bubbleImageView.left = kChatBubbleLeft

TSWeChat/Classes/Chat/Cells/TSChatTimeCell.swift

+3-3
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88

99
import UIKit
1010

11-
private let kChatTimeLabelMaxWdith : CGFloat = UIScreen.width - 30*2
11+
private let kChatTimeLabelMaxWdith : CGFloat = UIScreen.ts_width - 30*2
1212
private let kChatTimeLabelPaddingLeft: CGFloat = 6 //左右分别留出 6 像素的留白
1313
private let kChatTimeLabelPaddingTop: CGFloat = 3 //上下分别留出 3 像素的留白
1414
private let kChatTimeLabelMarginTop: CGFloat = 10 //顶部 10 px
@@ -38,9 +38,9 @@ class TSChatTimeCell: UITableViewCell {
3838
guard let message = self.model?.messageContent else {
3939
return
4040
}
41-
self.timeLabel.setFrameWithString(message, width: kChatTimeLabelMaxWdith)
41+
self.timeLabel.ts_setFrameWithString(message, width: kChatTimeLabelMaxWdith)
4242
self.timeLabel.width = self.timeLabel.width + kChatTimeLabelPaddingLeft*2 //左右的留白
43-
self.timeLabel.left = (UIScreen.width - self.timeLabel.width) / 2
43+
self.timeLabel.left = (UIScreen.ts_width - self.timeLabel.width) / 2
4444
self.timeLabel.height = self.timeLabel.height + kChatTimeLabelPaddingTop*2
4545
self.timeLabel.top = kChatTimeLabelMarginTop
4646
}

TSWeChat/Classes/Chat/Cells/TSChatVoiceCell.swift

+1-1
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@ class TSChatVoiceCell: TSChatBaseCell {
103103

104104
if model.fromMe {
105105
//value = 屏幕宽 - 头像的边距10 - 头像宽 - 气泡距离头像的 gap 值 - 文字宽 - 2倍的文字和气泡的左右距离
106-
self.listenVoiceButton.left = UIScreen.width - kChatAvatarMarginLeft - kChatAvatarWidth - kChatBubbleMaginLeft - self.listenVoiceButton.width
106+
self.listenVoiceButton.left = UIScreen.ts_width - kChatAvatarMarginLeft - kChatAvatarWidth - kChatBubbleMaginLeft - self.listenVoiceButton.width
107107
//value = 声音的左 - 秒数文字的宽 - 间隔值
108108
self.durationLabel.left = self.listenVoiceButton.left - self.durationLabel.width
109109
self.durationLabel.textAlignment = .right

0 commit comments

Comments
 (0)