调整用户资料页的 UI

This commit is contained in:
eggmanQQQ
2024-09-18 17:04:07 +08:00
parent 25b82beaf6
commit 1b0b461fd8
17 changed files with 863 additions and 493 deletions

View File

@@ -438,7 +438,6 @@
23E9E9A42A80DEAF00B792F2 /* XPMineGuildPersonalBillRecordContentView.m in Sources */ = {isa = PBXBuildFile; fileRef = 23E9E9A32A80DEAF00B792F2 /* XPMineGuildPersonalBillRecordContentView.m */; };
23E9E9A72A80F1C300B792F2 /* XPNewMineHallIncomeVC.m in Sources */ = {isa = PBXBuildFile; fileRef = 23E9E9A62A80F1C300B792F2 /* XPNewMineHallIncomeVC.m */; };
23E9E9AA2A80FDF100B792F2 /* XPNewMineHallIncomeCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 23E9E9A92A80FDF100B792F2 /* XPNewMineHallIncomeCell.m */; };
23E9E9B52A81E8E900B792F2 /* XPAdjustEvent.m in Sources */ = {isa = PBXBuildFile; fileRef = 23E9E9AF2A81E8E900B792F2 /* XPAdjustEvent.m */; };
23E9E9B72A82200500B792F2 /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 23E9E9B62A82200500B792F2 /* GoogleService-Info.plist */; };
23E9E9BA2A82370800B792F2 /* XPEventHandle.m in Sources */ = {isa = PBXBuildFile; fileRef = 23E9E9B82A82370800B792F2 /* XPEventHandle.m */; };
23E9E9BD2A82370E00B792F2 /* XPFirebbaseEvent.m in Sources */ = {isa = PBXBuildFile; fileRef = 23E9E9BC2A82370E00B792F2 /* XPFirebbaseEvent.m */; };
@@ -2421,8 +2420,6 @@
23E9E9A82A80FDF100B792F2 /* XPNewMineHallIncomeCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPNewMineHallIncomeCell.h; sourceTree = "<group>"; };
23E9E9A92A80FDF100B792F2 /* XPNewMineHallIncomeCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPNewMineHallIncomeCell.m; sourceTree = "<group>"; };
23E9E9AD2A81E8E900B792F2 /* XPEventHead.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = XPEventHead.h; sourceTree = "<group>"; };
23E9E9AF2A81E8E900B792F2 /* XPAdjustEvent.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = XPAdjustEvent.m; sourceTree = "<group>"; };
23E9E9B12A81E8E900B792F2 /* XPAdjustEvent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = XPAdjustEvent.h; sourceTree = "<group>"; };
23E9E9B62A82200500B792F2 /* GoogleService-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "GoogleService-Info.plist"; sourceTree = "<group>"; };
23E9E9B82A82370800B792F2 /* XPEventHandle.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = XPEventHandle.m; sourceTree = "<group>"; };
23E9E9B92A82370800B792F2 /* XPEventHandle.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = XPEventHandle.h; sourceTree = "<group>"; };
@@ -6388,8 +6385,6 @@
23E9E9AB2A81E8E900B792F2 /* Event */ = {
isa = PBXGroup;
children = (
23E9E9B12A81E8E900B792F2 /* XPAdjustEvent.h */,
23E9E9AF2A81E8E900B792F2 /* XPAdjustEvent.m */,
23E9E9AD2A81E8E900B792F2 /* XPEventHead.h */,
23E9E9B92A82370800B792F2 /* XPEventHandle.h */,
23E9E9B82A82370800B792F2 /* XPEventHandle.m */,
@@ -12107,7 +12102,6 @@
E80EC80D28ACD84000D133C5 /* QInputBarView.m in Sources */,
23E9EA852A84B6FD00B792F2 /* XPSoundCardModel.m in Sources */,
E8D48250278D68BA003C1D08 /* XPAcrossRoomPKPanelView.m in Sources */,
23E9E9B52A81E8E900B792F2 /* XPAdjustEvent.m in Sources */,
18F404C3276098F100A6C548 /* Api+Message.m in Sources */,
9B85B6D7279FDABA00A0A1AC /* XPUserCardSkillCardView.m in Sources */,
9B33E3CB27D85379003B0E62 /* UploadFile.m in Sources */,
@@ -12877,6 +12871,316 @@
"@executable_path/Frameworks",
);
MARKETING_VERSION = 20.20.36;
OTHER_LDFLAGS = (
"$(inherited)",
"-ObjC",
"-l\"c++\"",
"-l\"iconv\"",
"-l\"icucore\"",
"-l\"resolv\"",
"-l\"sqlite3\"",
"-l\"sqlite3.0\"",
"-ld64",
"-l\"z\"",
"-framework",
"\"AFNetworking\"",
"-framework",
"\"AVFoundation\"",
"-framework",
"\"AVKit\"",
"-framework",
"\"Accelerate\"",
"-framework",
"\"AgoraAiEchoCancellationExtension\"",
"-framework",
"\"AgoraAiEchoCancellationLLExtension\"",
"-framework",
"\"AgoraAiNoiseSuppressionExtension\"",
"-framework",
"\"AgoraAiNoiseSuppressionLLExtension\"",
"-framework",
"\"AgoraAudioBeautyExtension\"",
"-framework",
"\"AgoraClearVisionExtension\"",
"-framework",
"\"AgoraContentInspectExtension\"",
"-framework",
"\"AgoraFaceCaptureExtension\"",
"-framework",
"\"AgoraFaceDetectionExtension\"",
"-framework",
"\"AgoraLipSyncExtension\"",
"-framework",
"\"AgoraReplayKitExtension\"",
"-framework",
"\"AgoraRtcKit\"",
"-framework",
"\"AgoraSoundTouch\"",
"-framework",
"\"AgoraSpatialAudioExtension\"",
"-framework",
"\"AgoraVideoAv1DecoderExtension\"",
"-framework",
"\"AgoraVideoAv1EncoderExtension\"",
"-framework",
"\"AgoraVideoDecoderExtension\"",
"-framework",
"\"AgoraVideoEncoderExtension\"",
"-framework",
"\"AgoraVideoQualityAnalyzerExtension\"",
"-framework",
"\"AgoraVideoSegmentationExtension\"",
"-framework",
"\"Agorafdkaac\"",
"-framework",
"\"Agoraffmpeg\"",
"-framework",
"\"AppAuth\"",
"-framework",
"\"AppleAccountConnector\"",
"-framework",
"\"AssetsLibrary\"",
"-framework",
"\"AudioToolbox\"",
"-framework",
"\"Base64\"",
"-framework",
"\"Bugly\"",
"-framework",
"\"CFNetwork\"",
"-framework",
"\"COSBeaconAPI_Base\"",
"-framework",
"\"CocoaAsyncSocket\"",
"-framework",
"\"CoreFoundation\"",
"-framework",
"\"CoreGraphics\"",
"-framework",
"\"CoreMedia\"",
"-framework",
"\"CoreMotion\"",
"-framework",
"\"CoreServices\"",
"-framework",
"\"CoreTelephony\"",
"-framework",
"\"CoreText\"",
"-framework",
"\"FBAEMKit\"",
"-framework",
"\"FBLPromises\"",
"-framework",
"\"FBSDKCoreKit\"",
"-framework",
"\"FBSDKCoreKit_Basics\"",
"-framework",
"\"FBSDKLoginKit\"",
"-framework",
"\"FBSDKShareKit\"",
"-framework",
"\"FFPopup\"",
"-framework",
"\"FLAnimatedImage\"",
"-framework",
"\"FirebaseAnalytics\"",
"-framework",
"\"FirebaseCore\"",
"-framework",
"\"FirebaseCoreInternal\"",
"-framework",
"\"FirebaseInstallations\"",
"-framework",
"\"Foundation\"",
"-framework",
"\"GKCycleScrollView\"",
"-framework",
"\"GTMAppAuth\"",
"-framework",
"\"GTMSessionFetcher\"",
"-framework",
"\"GoogleAppMeasurement\"",
"-framework",
"\"GoogleAppMeasurementIdentitySupport\"",
"-framework",
"\"GoogleSignIn\"",
"-framework",
"\"GoogleUtilities\"",
"-framework",
"\"IQKeyboardManager\"",
"-framework",
"\"ImageIO\"",
"-framework",
"\"JXCategoryView\"",
"-framework",
"\"JXPagingView\"",
"-framework",
"\"JavaScriptCore\"",
"-framework",
"\"LineSDK\"",
"-framework",
"\"LocalAuthentication\"",
"-framework",
"\"MBProgressHUD\"",
"-framework",
"\"MJExtension\"",
"-framework",
"\"MJRefresh\"",
"-framework",
"\"MOBFoundation\"",
"-framework",
"\"MarqueeLabel\"",
"-framework",
"\"Masonry\"",
"-framework",
"\"Metal\"",
"-framework",
"\"MetalKit\"",
"-framework",
"\"MetalPerformanceShaders\"",
"-framework",
"\"MobLinkPro\"",
"-framework",
"\"MobileCoreServices\"",
"-framework",
"\"NIMNOS\"",
"-framework",
"\"NIMSDK\"",
"-framework",
"\"Photos\"",
"-framework",
"\"PhotosUI\"",
"-framework",
"\"Protobuf\"",
"-framework",
"\"QCloudCOSXML\"",
"-framework",
"\"QCloudCore\"",
"-framework",
"\"QCloudTrack\"",
"-framework",
"\"QGVAPlayer\"",
"-framework",
"\"QimeiSDK\"",
"-framework",
"\"QuartzCore\"",
"-framework",
"\"ReactiveObjC\"",
"-framework",
"\"ReplayKit\"",
"-framework",
"\"SDCycleScrollView\"",
"-framework",
"\"SDWebImage\"",
"-framework",
"\"SDWebImageFLPlugin\"",
"-framework",
"\"SSKeychain\"",
"-framework",
"\"SSZipArchive\"",
"-framework",
"\"SVGAPlayer\"",
"-framework",
"\"SZTextView\"",
"-framework",
"\"SafariServices\"",
"-framework",
"\"Security\"",
"-framework",
"\"ShareSDK\"",
"-framework",
"\"ShareSDKConnector\"",
"-framework",
"\"ShareSDKExtension\"",
"-framework",
"\"StoreKit\"",
"-framework",
"\"SystemConfiguration\"",
"-framework",
"\"TABAnimated\"",
"-framework",
"\"TXFFmpeg\"",
"-framework",
"\"TXLiteAVSDK_TRTC\"",
"-framework",
"\"TXSoundTouch\"",
"-framework",
"\"TYCyclePagerView\"",
"-framework",
"\"TZImagePickerController\"",
"-framework",
"\"UIKit\"",
"-framework",
"\"UMCommon\"",
"-framework",
"\"UMDevice\"",
"-framework",
"\"VideoToolbox\"",
"-framework",
"\"YXArtemis\"",
"-framework",
"\"YYCache\"",
"-framework",
"\"YYImage\"",
"-framework",
"\"YYText\"",
"-framework",
"\"YYWebImage\"",
"-framework",
"\"YuMi\"",
"-framework",
"\"ZLCollectionViewFlowLayout\"",
"-framework",
"\"aosl\"",
"-framework",
"\"libpag\"",
"-framework",
"\"nanopb\"",
"-framework",
"\"pop\"",
"-framework",
"\"video_dec\"",
"-framework",
"\"video_enc\"",
"-weak_framework",
"\"AgoraAiEchoCancellationExtension\"",
"-weak_framework",
"\"AgoraAiEchoCancellationLLExtension\"",
"-weak_framework",
"\"AgoraAiNoiseSuppressionExtension\"",
"-weak_framework",
"\"AgoraAiNoiseSuppressionLLExtension\"",
"-weak_framework",
"\"AgoraAudioBeautyExtension\"",
"-weak_framework",
"\"AgoraClearVisionExtension\"",
"-weak_framework",
"\"AgoraContentInspectExtension\"",
"-weak_framework",
"\"AgoraFaceCaptureExtension\"",
"-weak_framework",
"\"AgoraFaceDetectionExtension\"",
"-weak_framework",
"\"AgoraLipSyncExtension\"",
"-weak_framework",
"\"AgoraReplayKitExtension\"",
"-weak_framework",
"\"AgoraSpatialAudioExtension\"",
"-weak_framework",
"\"AgoraVideoAv1DecoderExtension\"",
"-weak_framework",
"\"AgoraVideoAv1EncoderExtension\"",
"-weak_framework",
"\"AgoraVideoDecoderExtension\"",
"-weak_framework",
"\"AgoraVideoEncoderExtension\"",
"-weak_framework",
"\"AgoraVideoQualityAnalyzerExtension\"",
"-weak_framework",
"\"AgoraVideoSegmentationExtension\"",
"-weak_framework",
"\"AuthenticationServices\"",
);
PRODUCT_BUNDLE_IDENTIFIER = com.peko.enterprise.ios;
PRODUCT_NAME = "$(TARGET_NAME)";
PROVISIONING_PROFILE_SPECIFIER = "";
@@ -12919,6 +13223,316 @@
"@executable_path/Frameworks",
);
MARKETING_VERSION = 20.20.36;
OTHER_LDFLAGS = (
"$(inherited)",
"-ObjC",
"-l\"c++\"",
"-l\"iconv\"",
"-l\"icucore\"",
"-l\"resolv\"",
"-l\"sqlite3\"",
"-l\"sqlite3.0\"",
"-ld64",
"-l\"z\"",
"-framework",
"\"AFNetworking\"",
"-framework",
"\"AVFoundation\"",
"-framework",
"\"AVKit\"",
"-framework",
"\"Accelerate\"",
"-framework",
"\"AgoraAiEchoCancellationExtension\"",
"-framework",
"\"AgoraAiEchoCancellationLLExtension\"",
"-framework",
"\"AgoraAiNoiseSuppressionExtension\"",
"-framework",
"\"AgoraAiNoiseSuppressionLLExtension\"",
"-framework",
"\"AgoraAudioBeautyExtension\"",
"-framework",
"\"AgoraClearVisionExtension\"",
"-framework",
"\"AgoraContentInspectExtension\"",
"-framework",
"\"AgoraFaceCaptureExtension\"",
"-framework",
"\"AgoraFaceDetectionExtension\"",
"-framework",
"\"AgoraLipSyncExtension\"",
"-framework",
"\"AgoraReplayKitExtension\"",
"-framework",
"\"AgoraRtcKit\"",
"-framework",
"\"AgoraSoundTouch\"",
"-framework",
"\"AgoraSpatialAudioExtension\"",
"-framework",
"\"AgoraVideoAv1DecoderExtension\"",
"-framework",
"\"AgoraVideoAv1EncoderExtension\"",
"-framework",
"\"AgoraVideoDecoderExtension\"",
"-framework",
"\"AgoraVideoEncoderExtension\"",
"-framework",
"\"AgoraVideoQualityAnalyzerExtension\"",
"-framework",
"\"AgoraVideoSegmentationExtension\"",
"-framework",
"\"Agorafdkaac\"",
"-framework",
"\"Agoraffmpeg\"",
"-framework",
"\"AppAuth\"",
"-framework",
"\"AppleAccountConnector\"",
"-framework",
"\"AssetsLibrary\"",
"-framework",
"\"AudioToolbox\"",
"-framework",
"\"Base64\"",
"-framework",
"\"Bugly\"",
"-framework",
"\"CFNetwork\"",
"-framework",
"\"COSBeaconAPI_Base\"",
"-framework",
"\"CocoaAsyncSocket\"",
"-framework",
"\"CoreFoundation\"",
"-framework",
"\"CoreGraphics\"",
"-framework",
"\"CoreMedia\"",
"-framework",
"\"CoreMotion\"",
"-framework",
"\"CoreServices\"",
"-framework",
"\"CoreTelephony\"",
"-framework",
"\"CoreText\"",
"-framework",
"\"FBAEMKit\"",
"-framework",
"\"FBLPromises\"",
"-framework",
"\"FBSDKCoreKit\"",
"-framework",
"\"FBSDKCoreKit_Basics\"",
"-framework",
"\"FBSDKLoginKit\"",
"-framework",
"\"FBSDKShareKit\"",
"-framework",
"\"FFPopup\"",
"-framework",
"\"FLAnimatedImage\"",
"-framework",
"\"FirebaseAnalytics\"",
"-framework",
"\"FirebaseCore\"",
"-framework",
"\"FirebaseCoreInternal\"",
"-framework",
"\"FirebaseInstallations\"",
"-framework",
"\"Foundation\"",
"-framework",
"\"GKCycleScrollView\"",
"-framework",
"\"GTMAppAuth\"",
"-framework",
"\"GTMSessionFetcher\"",
"-framework",
"\"GoogleAppMeasurement\"",
"-framework",
"\"GoogleAppMeasurementIdentitySupport\"",
"-framework",
"\"GoogleSignIn\"",
"-framework",
"\"GoogleUtilities\"",
"-framework",
"\"IQKeyboardManager\"",
"-framework",
"\"ImageIO\"",
"-framework",
"\"JXCategoryView\"",
"-framework",
"\"JXPagingView\"",
"-framework",
"\"JavaScriptCore\"",
"-framework",
"\"LineSDK\"",
"-framework",
"\"LocalAuthentication\"",
"-framework",
"\"MBProgressHUD\"",
"-framework",
"\"MJExtension\"",
"-framework",
"\"MJRefresh\"",
"-framework",
"\"MOBFoundation\"",
"-framework",
"\"MarqueeLabel\"",
"-framework",
"\"Masonry\"",
"-framework",
"\"Metal\"",
"-framework",
"\"MetalKit\"",
"-framework",
"\"MetalPerformanceShaders\"",
"-framework",
"\"MobLinkPro\"",
"-framework",
"\"MobileCoreServices\"",
"-framework",
"\"NIMNOS\"",
"-framework",
"\"NIMSDK\"",
"-framework",
"\"Photos\"",
"-framework",
"\"PhotosUI\"",
"-framework",
"\"Protobuf\"",
"-framework",
"\"QCloudCOSXML\"",
"-framework",
"\"QCloudCore\"",
"-framework",
"\"QCloudTrack\"",
"-framework",
"\"QGVAPlayer\"",
"-framework",
"\"QimeiSDK\"",
"-framework",
"\"QuartzCore\"",
"-framework",
"\"ReactiveObjC\"",
"-framework",
"\"ReplayKit\"",
"-framework",
"\"SDCycleScrollView\"",
"-framework",
"\"SDWebImage\"",
"-framework",
"\"SDWebImageFLPlugin\"",
"-framework",
"\"SSKeychain\"",
"-framework",
"\"SSZipArchive\"",
"-framework",
"\"SVGAPlayer\"",
"-framework",
"\"SZTextView\"",
"-framework",
"\"SafariServices\"",
"-framework",
"\"Security\"",
"-framework",
"\"ShareSDK\"",
"-framework",
"\"ShareSDKConnector\"",
"-framework",
"\"ShareSDKExtension\"",
"-framework",
"\"StoreKit\"",
"-framework",
"\"SystemConfiguration\"",
"-framework",
"\"TABAnimated\"",
"-framework",
"\"TXFFmpeg\"",
"-framework",
"\"TXLiteAVSDK_TRTC\"",
"-framework",
"\"TXSoundTouch\"",
"-framework",
"\"TYCyclePagerView\"",
"-framework",
"\"TZImagePickerController\"",
"-framework",
"\"UIKit\"",
"-framework",
"\"UMCommon\"",
"-framework",
"\"UMDevice\"",
"-framework",
"\"VideoToolbox\"",
"-framework",
"\"YXArtemis\"",
"-framework",
"\"YYCache\"",
"-framework",
"\"YYImage\"",
"-framework",
"\"YYText\"",
"-framework",
"\"YYWebImage\"",
"-framework",
"\"YuMi\"",
"-framework",
"\"ZLCollectionViewFlowLayout\"",
"-framework",
"\"aosl\"",
"-framework",
"\"libpag\"",
"-framework",
"\"nanopb\"",
"-framework",
"\"pop\"",
"-framework",
"\"video_dec\"",
"-framework",
"\"video_enc\"",
"-weak_framework",
"\"AgoraAiEchoCancellationExtension\"",
"-weak_framework",
"\"AgoraAiEchoCancellationLLExtension\"",
"-weak_framework",
"\"AgoraAiNoiseSuppressionExtension\"",
"-weak_framework",
"\"AgoraAiNoiseSuppressionLLExtension\"",
"-weak_framework",
"\"AgoraAudioBeautyExtension\"",
"-weak_framework",
"\"AgoraClearVisionExtension\"",
"-weak_framework",
"\"AgoraContentInspectExtension\"",
"-weak_framework",
"\"AgoraFaceCaptureExtension\"",
"-weak_framework",
"\"AgoraFaceDetectionExtension\"",
"-weak_framework",
"\"AgoraLipSyncExtension\"",
"-weak_framework",
"\"AgoraReplayKitExtension\"",
"-weak_framework",
"\"AgoraSpatialAudioExtension\"",
"-weak_framework",
"\"AgoraVideoAv1DecoderExtension\"",
"-weak_framework",
"\"AgoraVideoAv1EncoderExtension\"",
"-weak_framework",
"\"AgoraVideoDecoderExtension\"",
"-weak_framework",
"\"AgoraVideoEncoderExtension\"",
"-weak_framework",
"\"AgoraVideoQualityAnalyzerExtension\"",
"-weak_framework",
"\"AgoraVideoSegmentationExtension\"",
"-weak_framework",
"\"AuthenticationServices\"",
);
PRODUCT_BUNDLE_IDENTIFIER = com.peko.enterprise.ios;
PRODUCT_NAME = "$(TARGET_NAME)";
PROVISIONING_PROFILE_SPECIFIER = "";

View File

@@ -5,7 +5,6 @@
"scale" : "1x"
},
{
"filename" : "复制@2x.png",
"idiom" : "universal",
"scale" : "2x"
},

Binary file not shown.

Before

Width:  |  Height:  |  Size: 271 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 647 B

After

Width:  |  Height:  |  Size: 755 B

View File

@@ -6,8 +6,8 @@
//
#import "MvpViewController.h"
#import "XPSoundCardModel.h"
#import "XPMineUserInfoTagModel.h"
NS_ASSUME_NONNULL_BEGIN
@class XPMineUserInfoEditViewController;
@protocol XPMineUserInfoEditViewControllerDelegate <NSObject>
@@ -16,8 +16,7 @@ NS_ASSUME_NONNULL_BEGIN
- (void)xPMineUserInfoEditViewControllerC:(XPMineUserInfoEditViewController *)vc didClickCompleteArea:(NSString *)area;
@end
@interface XPMineUserInfoEditViewController : MvpViewController
@property (nonatomic,strong) XPMineUserInfoTagModel *tagModel;
@property (nonatomic,strong) XPSoundCardModel * __nullable soundModel;
@property (nonatomic,copy) NSString *uid;
///
@property (nonatomic,copy) NSString *area;

View File

@@ -29,23 +29,20 @@
#import "XPMineUserInfoDesViewController.h"
#import "XPMineUserInfoAlbumViewController.h"
#import "XPMineUserInfoRecordedSoundVC.h"
#import "XPMineUserInfoTagVC.h"
UIKIT_EXTERN NSString * kUpdateSoundInfo;
@interface XPMineUserInfoEditViewController ()<UITableViewDelegate, UITableViewDataSource, XPMineUserInfoEditProtocol, XPMineUserInfoDesViewControllerDelegate, XPMineUserInfoNickViewControllerDelegate, UIImagePickerControllerDelegate, UINavigationControllerDelegate, XPMineUserInfoDateViewDelegate,XPMineUserInfoTagVCDelegate,XPMineUserInfoEditPickViewDelegate>
@interface XPMineUserInfoEditViewController ()<UITableViewDelegate, UITableViewDataSource, XPMineUserInfoEditProtocol, XPMineUserInfoDesViewControllerDelegate, XPMineUserInfoNickViewControllerDelegate, UIImagePickerControllerDelegate, UINavigationControllerDelegate, XPMineUserInfoDateViewDelegate, XPMineUserInfoEditPickViewDelegate>
///
@property (nonatomic,strong) UITableView *tableView;
///
@property (nonatomic,strong) NSArray *datasouce;
///
@property (nonatomic,strong) UserInfoModel *userInfo;
///
@property (nonatomic,strong) NSMutableArray *areaList;
///
@property (nonatomic,strong) NSMutableArray *tagList;
///
@property (nonatomic,assign) CGFloat maxWidth;
@end
@@ -64,20 +61,12 @@ UIKIT_EXTERN NSString * kUpdateSoundInfo;
[self initSubViews];
[self initSubViewConstraints];
[self getAreaList];
[[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(updateSoundInfo:) name:kUpdateSoundInfo object:nil];
}
-(void)getAreaList{
[self.presenter getAreaList];
}
-(void)updateSoundInfo:(NSNotification *)not{
if(not.object != nil){
self.soundModel = not.object;
}else{
self.soundModel = nil;
}
[self.tableView reloadData];
}
- (void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
[self.presenter getUserInfo];
@@ -163,31 +152,7 @@ UIKIT_EXTERN NSString * kUpdateSoundInfo;
dateView.backgroundColor = [UIColor colorWithWhite:0 alpha:0.5];
}];
}
#pragma mark - XPMineUserInfoTagVCDelegate
- (void)xPMineUserInfoTagVC:(XPMineUserInfoTagVC *)vc didClickComplete:(NSArray *)meLabels{
self.tagModel.meLabels = meLabels;
self.tagList = [NSMutableArray array];
CGFloat maxWidth = 0;
self.maxWidth = 0;
for (int i = 0; i < meLabels.count; i++) {
XPMineUserInfoTagItemModel *model = [XPMineUserInfoTagItemModel new];
NSString *text = meLabels[i];
model.label = text;
CGRect stringRect = [text boundingRectWithSize:CGSizeMake(MAXFLOAT, kGetScaleWidth(18)) options:NSStringDrawingUsesLineFragmentOrigin attributes:@{NSFontAttributeName:kFontRegular(10)} context:nil];
CGFloat width = stringRect.size.width + kGetScaleWidth(14);
model.width = width;
maxWidth = maxWidth + width;
if(maxWidth < kGetScaleWidth(220)){
self.maxWidth = maxWidth;
[self.tagList addObject:model];
}
}
[self.tableView reloadData];
if(self.delegate && [self.delegate respondsToSelector:@selector(xPMineUserInfoEditViewControllerC:didClickComplete:)]){
[self.delegate xPMineUserInfoEditViewControllerC:self didClickComplete:@""];
}
}
#pragma mark - UITableViewDelegate And UITableViewDataSource
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
return 1;
@@ -213,15 +178,12 @@ UIKIT_EXTERN NSString * kUpdateSoundInfo;
}
XPMineUserInfoEditModel * model = [self.datasouce xpSafeObjectAtIndex:indexPath.row];
if(model.type == XPMineUserInfoEditType_Tag){
cell.itemList = self.tagList;
cell.maxWidth = self.maxWidth + self.tagList.count * kGetScaleWidth(5);
model.subTitle = self.tagList.count > 0 ? @"":YMLocalizedString(@"XPMineUserInfoEditPresenter9");
}else if(model.type == XPMineUserInfoEditType_Area){
model.subTitle = self.area;
}
cell.itmeModel = model;
cell.soundModel = self.soundModel;
return cell;
}
@@ -263,20 +225,10 @@ UIKIT_EXTERN NSString * kUpdateSoundInfo;
}
break;
case XPMineUserInfoEditType_Sound:
{
XPMineUserInfoRecordedSoundVC *vc = [XPMineUserInfoRecordedSoundVC new];
vc.soundModel = self.soundModel;
[self.navigationController pushViewController:vc animated:YES];
break;
}
case XPMineUserInfoEditType_Tag:
{
XPMineUserInfoTagVC *tagVC =[XPMineUserInfoTagVC new];
tagVC.tagModel = self.tagModel;
tagVC.delegate = self;
[self.navigationController pushViewController:tagVC animated:YES];
break;
}
case XPMineUserInfoEditType_Area:
{
XPMineUserInfoEditPickView *pckView = [[XPMineUserInfoEditPickView alloc]initWithFrame:CGRectMake(0, 0, KScreenWidth, KScreenHeight)];
@@ -376,32 +328,6 @@ UIKIT_EXTERN NSString * kUpdateSoundInfo;
[self.presenter saveAreaConfigWithArea:area];
}
#pragma mark - Getters And Setters
-(void)setSoundModel:(XPSoundCardModel *)soundModel{
_soundModel = soundModel;
[self.tableView reloadData];
}
-(void)setTagModel:(XPMineUserInfoTagModel *)tagModel{
_tagModel = tagModel;
NSArray *meLabels = _tagModel.meLabels;
self.tagList = [NSMutableArray array];
CGFloat maxWidth = 0 ;
self.maxWidth = 0;
for (int i = 0; i < meLabels.count; i++) {
XPMineUserInfoTagItemModel *model = [XPMineUserInfoTagItemModel new];
NSString *text = meLabels[i];
model.label = text;
CGRect stringRect = [text boundingRectWithSize:CGSizeMake(MAXFLOAT, kGetScaleWidth(18)) options:NSStringDrawingUsesLineFragmentOrigin attributes:@{NSFontAttributeName:kFontRegular(10)} context:nil];
CGFloat width = stringRect.size.width + kGetScaleWidth(14);
model.width = width;
maxWidth = maxWidth + width;
if(maxWidth < kGetScaleWidth(220)){
self.maxWidth = maxWidth;
[self.tagList addObject:model];
}
}
[self.tableView reloadData];
}
- (UITableView *)tableView {
if (!_tableView) {
_tableView = [[UITableView alloc] initWithFrame:CGRectZero style:UITableViewStylePlain];

View File

@@ -46,14 +46,13 @@
#import "XPGiftUserDataViewController.h"
#import "XPRoomMiniManager.h"
#import "XPMineUserInfoTagVC.h"
#import "XPMomentUserDataViewController.h"
UIKIT_EXTERN NSString * kUpdateSoundInfo;
@interface XPMineUserInfoViewController ()<
XPMineCustomNavViewDelegate, XPMineUserInfoProtocol, XPMineUserInfoHeaderViewDelegate, JXCategoryViewDelegate,JXPagerViewDelegate, JXPagerMainTableViewGestureDelegate,XPMineUserInfoEditViewControllerDelegate,XPMineUserInfoTagVCDelegate,XPMineUserInfoIndividualTagViewDelegate, XPMineUserDataViewControllerDelegate>
XPMineCustomNavViewDelegate, XPMineUserInfoProtocol, XPMineUserInfoHeaderViewDelegate, JXCategoryViewDelegate, JXPagerViewDelegate, JXPagerMainTableViewGestureDelegate, XPMineUserInfoEditViewControllerDelegate, XPMineUserDataViewControllerDelegate>
@property (nonatomic, strong) JXCategoryTitleView *titleView;
@property (nonatomic, strong) JXCategoryIndicatorImageView *lineView;
@property (nonatomic, strong) JXPagerView *pagingView;
@@ -76,8 +75,6 @@ XPMineCustomNavViewDelegate, XPMineUserInfoProtocol, XPMineUserInfoHeaderViewDel
@property (nonatomic,strong) XPGiftUserDataViewController *giftVC;
///
@property (nonatomic,strong) XPMineUserInfoEditViewController * editVC;
///
@property (nonatomic,strong) XPMineUserInfoTagModel *tagModel;
@property (nonatomic, strong) XPMomentUserDataViewController *userMomentVC;
@@ -325,28 +322,10 @@ XPMineCustomNavViewDelegate, XPMineUserInfoProtocol, XPMineUserInfoHeaderViewDel
}
}
#pragma mark - XPMineUserInfoIndividualTagView
- (void)didClickGotoEditVC{
XPMineUserInfoTagVC *tagVC =[XPMineUserInfoTagVC new];
tagVC.tagModel = self.tagModel;
tagVC.delegate = self;
[self.navigationController pushViewController:tagVC animated:YES];
}
#pragma mark- XPMineUserInfoTagVCDelegate
- (void)xPMineUserInfoTagVC:(XPMineUserInfoTagVC *)vc didClickComplete:(NSArray *)meLabels{
self.headView.tagModel = self.tagModel;
}
#pragma mark - XPMineUserInfoProtocol
- (void)onGetUserInfoSuccess:(UserInfoModel *)userInfo {
self.userInfo = userInfo;
self.headView.userInfo = userInfo;
XPMineUserInfoTagModel *tagModel = [XPMineUserInfoTagModel new];
tagModel.meLabels = userInfo.labels;
self.tagModel = tagModel;
self.editVC.tagModel = tagModel;
self.headView.tagModel = tagModel;
self.userDataVC.userInfo = userInfo;
self.headerHeight = [XPMineUserInfoHeaderView headerHeight:userInfo];
@@ -386,9 +365,8 @@ XPMineCustomNavViewDelegate, XPMineUserInfoProtocol, XPMineUserInfoHeaderViewDel
}
#pragma mark -XPMineUserInfoEditViewController
- (void)xPMineUserInfoEditViewControllerC:(XPMineUserInfoEditViewController *)vc didClickComplete:(NSString *)meLabels{
self.headView.tagModel = self.tagModel;
// self.headView.tagModel = self.tagModel;
}
- (void)xPMineUserInfoEditViewControllerC:(XPMineUserInfoEditViewController *)vc didClickCompleteArea:(NSString *)area{
self.userInfo.region = area;

View File

@@ -23,11 +23,11 @@
if (self) {
[self addSubview:self.frameImageView];
[self addSubview:self.numLabel];
[self addSubview:self.copiedImageView];
// [self addSubview:self.copiedImageView];
[self.frameImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.top.leading.bottom.mas_equalTo(self);
make.trailing.mas_equalTo(self).offset(-18);
make.trailing.mas_equalTo(self);
}];
[self.numLabel mas_makeConstraints:^(MASConstraintMaker *make) {
@@ -35,17 +35,16 @@
make.leading.mas_equalTo(self).offset(10);
make.trailing.mas_equalTo(self).offset(-46);
} else {
make.leading.mas_equalTo(self).offset(28);
make.trailing.mas_equalTo(self).offset(-26);
make.leading.mas_equalTo(self.frameImageView).offset(24);
make.trailing.mas_equalTo(self).offset(-8);
}
make.centerY.mas_equalTo(self).offset(0.8);
}];
[self.copiedImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.trailing.centerY.mas_equalTo(self);
make.size.mas_equalTo(CGSizeMake(14, 14));
}];
// [self.copiedImageView mas_makeConstraints:^(MASConstraintMaker *make) {
// make.trailing.centerY.mas_equalTo(self);
// make.size.mas_equalTo(CGSizeMake(14, 14));
// }];
}
return self;
}
@@ -80,7 +79,7 @@
- (UILabel *)numLabel {
if (!_numLabel) {
_numLabel = [[UILabel alloc] init];
_numLabel.font = [UIFont systemFontOfSize:11 weight:UIFontWeightMedium];
_numLabel.font = kFontMedium(10);
_numLabel.textAlignment = NSTextAlignmentCenter;
_numLabel.textColor = [UIColor whiteColor];
_numLabel.userInteractionEnabled = YES;

View File

@@ -11,7 +11,6 @@ NS_ASSUME_NONNULL_BEGIN
@class XPMineUserInfoHeaderTagView;
@protocol XPMineUserInfoHeaderTagViewDelegate <NSObject>
- (void)didClickGotoIvidualView;
- (void)didClickGotoEditVC;
@end

View File

@@ -91,9 +91,9 @@
}
}
-(void)clickAction{
if(self.delegate && [self.delegate respondsToSelector:@selector(didClickGotoIvidualView)]){
[self.delegate didClickGotoIvidualView];
}
// if(self.delegate && [self.delegate respondsToSelector:@selector(didClickGotoIvidualView)]){
// [self.delegate didClickGotoIvidualView];
// }
}
-(void)editAction{
if(self.delegate && [self.delegate respondsToSelector:@selector(didClickGotoEditVC)]){

View File

@@ -20,20 +20,14 @@ NS_ASSUME_NONNULL_BEGIN
///去录音VC
- (void)didClickGoToPlaySound;
///去标签页
- (void)xPMineUserInfoHeaderView:(XPMineUserInfoHeaderView *)view didClickGotoEditView:(NSMutableArray *)itemList;
- (void)xPMineUserInfoHeaderView:(XPMineUserInfoHeaderView *)view didClickGotoEditView:(NSMutableArray *)itemList;
///去标签vc
- (void)xPMineUserInfoHeaderView:(XPMineUserInfoHeaderView *)view didClickGotoEditVC:(NSMutableArray *)itemList;
- (void)xPMineUserInfoHeaderView:(XPMineUserInfoHeaderView *)view didClickGotoEditVC:(NSMutableArray *)itemList;
@end
@interface XPMineUserInfoHeaderView : UIView
///用户信息
@property (nonatomic,strong) UserInfoModel *userInfo;
///声音卡基本信息
//@property (nonatomic,strong) XPSoundCardModel *__nullable soundModel;
///标签
@property (nonatomic,strong) XPMineUserInfoTagModel *tagModel;
///轮播图
@property (nonatomic,strong, readonly) SDCycleScrollView *pi_cycleScrollView;
///代理
@property (nonatomic,weak) id<XPMineUserInfoHeaderViewDelegate> delegate;
///当前查看用户是否在直播

View File

@@ -41,9 +41,9 @@ return view;\
}()
@interface XPMineUserInfoHeaderView ()<SDCycleScrollViewDelegate, SDPhotoBrowserDelegate,XPMineUserInfoHeaderTagViewDelegate>
///
@property (nonatomic,strong) SDCycleScrollView *pi_cycleScrollView;
///
@property (nonatomic,strong) UIButton *pageButton;
///
@@ -64,17 +64,12 @@ return view;\
///
@property (nonatomic, strong) SpriteSheetImageManager *manager;
@property (nonatomic, strong) SVGAImageView *headWearSvgaImageView;
///
@property (nonatomic,strong) UIStackView *nickStackView;
///
@property (nonatomic,strong) UILabel *nameLabel;
///sex
@property (nonatomic,strong) UIButton *sexImageView;
/////
//@property (nonatomic,strong) UIImageView *onlineView;
///icon
@property (nonatomic,strong) SVGAImageView *onlineIconView;
///tilte
@@ -83,7 +78,6 @@ return view;\
@property (nonatomic,strong) UIButton *onlineButton;
///
@property (nonatomic,strong) UIStackView *idStackView;
///id
@property (nonatomic,strong) UILabel *idLabel;
@property (nonatomic, strong) UIImageView *idIconImageView;
@@ -95,7 +89,6 @@ return view;\
@property (nonatomic,strong) UIStackView *tagStackView;
///
@property (nonatomic,strong) NetImageView *charmImageView;
///
@property (nonatomic,strong) NetImageView *experImageView;
///
@@ -110,26 +103,14 @@ return view;\
@property (nonatomic,strong) UIImageView *newUserImageView;
///
@property (nonatomic,strong) UIImageView *officialImageView;
///
@property (nonatomic,strong) UIStackView *singStackView;
///
@property (nonatomic,strong) XPMineUserInfoHeaderTagView *tagView;
///
@property (nonatomic,strong) UIView * signBackView;
///
@property (nonatomic,strong) UILabel *signatureLabel;
///线
//@property (nonatomic,strong) UIView * lineView;
///VIPicon
@property (nonatomic,strong) NetImageView *nobleImageView;
@property (nonatomic, strong) UIStackView *locateDateStackView;
@property (nonatomic, strong) UILabel *locateLabel;
@property (nonatomic, strong) UIImageView *relationshipView;
@property (nonatomic, strong) UILabel *fansNum;
@property (nonatomic, strong) UILabel *followersNum;
@@ -148,10 +129,11 @@ return view;\
+ (CGFloat)headerHeight:(UserInfoModel *)model {
CGFloat height = 0;
NSInteger numberOfLines = 1;
CGFloat lineHeight = 0;
if (model.userDesc.length > 0) {
//
CGFloat maxWidth = KScreenWidth - 70;
UIFont *font = [UIFont systemFontOfSize:12 weight:UIFontWeightMedium];
CGFloat maxWidth = KScreenWidth - 30;
UIFont *font = kFontRegular(13);
//
NSDictionary *attributes = @{NSFontAttributeName:font};
@@ -162,21 +144,54 @@ return view;\
context:nil];
//
CGFloat lineHeight = font.lineHeight;
lineHeight = font.lineHeight;
//
numberOfLines = ceil(textRect.size.height / lineHeight);
}
height = 470 + 14 * numberOfLines;
height = kGetScaleWidth(400) + lineHeight * numberOfLines;
return height;
}
#pragma mark - Private Method
- (void)setupUI {
self.backgroundColor = [UIColor clearColor];
[self setupAlbumScrollView];
[self addSubview:self.pageButton];
[self.pageButton mas_makeConstraints:^(MASConstraintMaker *make) {
make.trailing.mas_equalTo(self);
make.top.mas_equalTo(self).offset(kNavigationHeight + 80);
make.size.mas_equalTo(CGSizeMake(30, 18));
}];
[self addSubview:self.userInfoView];
[self.userInfoView mas_makeConstraints:^(MASConstraintMaker *make) {
make.leading.trailing.mas_equalTo(self);
make.top.mas_equalTo(self.pageButton.mas_bottom).offset(9);
make.bottom.mas_equalTo(self);
}];
[self setupAvatars];
[self setupNameArea];
[self setupIDArea];
[self setupLocateArea];
[self setupCustomDesc];
[self setupRelationshipArea];
}
- (void)setupAlbumScrollView {
[self addSubview:self.pi_cycleScrollView];
[self.pi_cycleScrollView mas_makeConstraints:^(MASConstraintMaker *make) {
make.leading.trailing.top.mas_equalTo(self);
@@ -197,20 +212,48 @@ return view;\
[overlay mas_makeConstraints:^(MASConstraintMaker *make) {
make.edges.mas_equalTo(self.pi_cycleScrollView);
}];
}
- (void)setupAvatars {
[self addSubview:self.avatarView];
[self.avatarView mas_makeConstraints:^(MASConstraintMaker *make) {
make.width.height.mas_equalTo(kGetScaleWidth(82));
make.leading.mas_equalTo(30);
make.centerY.equalTo(self.userInfoView.mas_top);
}];
[self addSubview:self.headWearImageView];
[self.headWearImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.center.mas_equalTo(self.avatarView);
make.width.height.mas_equalTo(kGetScaleWidth(114));
}];
[self addSubview:self.headWearSvgaImageView];
[self.headWearSvgaImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.center.mas_equalTo(self.avatarView);
make.width.height.mas_equalTo(kGetScaleWidth(114));
}];
[self addSubview:self.reviewIcon];
[self.reviewIcon mas_makeConstraints:^(MASConstraintMaker *make) {
make.edges.mas_equalTo(self.avatarView);
}];
}
- (void)setupNameArea {
[self addSubview:self.onlineButton];
[self.onlineButton mas_makeConstraints:^(MASConstraintMaker *make) {
make.trailing.mas_equalTo(self).offset(10);
make.top.mas_equalTo(self).offset(104);
make.height.mas_equalTo(24);
make.trailing.mas_equalTo(self.userInfoView).offset(-15);
make.top.mas_equalTo(self.userInfoView).offset(kGetScaleWidth(57));
make.height.mas_equalTo(22);
make.width.mas_equalTo(72);
}];
[self.onlineButton addSubview:self.onlineIconView];
[self.onlineIconView mas_makeConstraints:^(MASConstraintMaker *make) {
make.leading.mas_equalTo(8);
make.centerY.mas_equalTo(0);
make.width.mas_equalTo(12);
make.height.mas_equalTo(12);
make.width.height.mas_equalTo(16);
}];
@kWeakify(self);
@@ -223,149 +266,67 @@ return view;\
[self.onlineIconView startAnimation];
} failureBlock:^(NSError * _Nonnull error) { }];
[self addSubview:self.pageButton];
[self.pageButton mas_makeConstraints:^(MASConstraintMaker *make) {
make.trailing.mas_equalTo(self);
make.top.mas_equalTo(self.onlineButton.mas_bottom).offset(76);
make.size.mas_equalTo(CGSizeMake(63, 23));
}];
[self addSubview:self.userInfoView];
[self.userInfoView mas_makeConstraints:^(MASConstraintMaker *make) {
make.leading.trailing.mas_equalTo(self);
make.top.mas_equalTo(self.pi_cycleScrollView.mas_bottom);
make.bottom.mas_equalTo(self);
}];
[self addSubview:self.avatarView];
[self.avatarView mas_makeConstraints:^(MASConstraintMaker *make) {
make.width.height.mas_equalTo(kGetScaleWidth(72));
make.centerX.mas_equalTo(0);
make.centerY.equalTo(self.userInfoView.mas_top);
}];
[self addSubview:self.headWearImageView];
[self.headWearImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.center.mas_equalTo(self.avatarView);
make.width.height.mas_equalTo(kGetScaleWidth(92));
}];
[self addSubview:self.headWearSvgaImageView];
[self.headWearSvgaImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.center.mas_equalTo(self.avatarView);
make.width.height.mas_equalTo(kGetScaleWidth(96));
}];
[self addSubview:self.reviewIcon];
[self setupNameArea];
[self setupIDArea];
[self setupLocateArea];
[self setupTagsArea];
[self setupCustomDesc];
[self setupRelationshipArea];
}
- (void)setupNameArea {
[self.userInfoView addSubview:self.nickStackView];
[self.nickStackView addArrangedSubview:self.nobleImageView];
[self.nickStackView addArrangedSubview:self.nameLabel];
[self.nickStackView addArrangedSubview:self.sexImageView];
[self.nickStackView mas_makeConstraints:^(MASConstraintMaker *make) {
make.centerX.mas_equalTo(self.userInfoView);
make.top.mas_equalTo(self.avatarView.mas_bottom).offset(10);
make.height.mas_equalTo(20);
make.leading.mas_equalTo(self.userInfoView).offset(kGetScaleWidth(15));
make.top.mas_equalTo(self.userInfoView).offset(kGetScaleWidth(57));
make.height.mas_equalTo(22);
}];
[self.nobleImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.width.height.mas_equalTo(CGSizeMake(35, 25));
}];
[self.sexImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.height.mas_equalTo(14);
make.size.mas_equalTo(CGSizeMake(35, 16));
}];
}
- (void)setupIDArea {
[self.userInfoView addSubview:self.idStackView];
[self.userInfoView addSubview:self.beautIDView];
UIStackView *stack = [[UIStackView alloc] init];
stack.axis = UILayoutConstraintAxisHorizontal;
stack.distribution = UIStackViewDistributionFill;
stack.alignment = UIStackViewAlignmentCenter;
stack.spacing = 4;
[self.userInfoView addSubview:stack];
[stack mas_makeConstraints:^(MASConstraintMaker *make) {
make.leading.mas_equalTo(kGetScaleWidth(15));
make.top.mas_equalTo(self.nickStackView.mas_bottom).offset(5);
make.height.mas_equalTo(24);
}];
if (isMSRTL()) {
[self.idStackView addArrangedSubview:self.copyIdImageView];
[self.idStackView addArrangedSubview:self.idLabel];
[self.idStackView addArrangedSubview:self.idIconImageView];
} else {
[self.idStackView addArrangedSubview:self.idIconImageView];
[self.idStackView addArrangedSubview:self.idLabel];
[self.idStackView addArrangedSubview:self.copyIdImageView];
}
[self.idStackView addSubview:self.copyIdButton];
[stack addArrangedSubview:self.beautIDView];
[stack addArrangedSubview:self.idLabel];
[stack addArrangedSubview:self.copyIdImageView];
[stack addArrangedSubview:self.experImageView];
[stack addArrangedSubview:self.charmImageView];
[stack addArrangedSubview:self.namePlateView];
[self.beautIDView mas_makeConstraints:^(MASConstraintMaker *make) {
make.top.mas_equalTo(self.nickStackView.mas_bottom).offset(6);
make.height.mas_equalTo(24);
make.centerX.mas_equalTo(self.userInfoView);
}];
[self.idStackView mas_makeConstraints:^(MASConstraintMaker *make) {
if (isMSRTL()) {
make.centerX.mas_equalTo(self.userInfoView).offset(8);
} else {
make.centerX.mas_equalTo(self.userInfoView);
}
make.top.mas_equalTo(self.nickStackView.mas_bottom).offset(6);
make.height.mas_equalTo(24);
}];
[self.idIconImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.width.height.mas_equalTo(14);
}];
[self.copyIdButton mas_makeConstraints:^(MASConstraintMaker *make) {
make.edges.mas_equalTo(self.idStackView);
make.width.mas_greaterThanOrEqualTo(60);
}];
[self.idLabel mas_makeConstraints:^(MASConstraintMaker *make) {
make.height.mas_equalTo(14);
make.height.mas_equalTo(24);
}];
[self.copyIdImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.size.mas_equalTo(CGSizeMake(14, 14));
make.size.mas_equalTo(CGSizeMake(18, 18));
}];
}
- (void)setupLocateArea {
[self.userInfoView addSubview:self.locateDateStackView];
[self.locateDateStackView mas_makeConstraints:^(MASConstraintMaker *make) {
make.leading.trailing.mas_equalTo(self.userInfoView);
make.top.mas_equalTo(self.idStackView.mas_bottom).offset(4);
[self.experImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.size.mas_equalTo(CGSizeMake(36, 18));
}];
[self.locateLabel mas_makeConstraints:^(MASConstraintMaker *make) {
make.height.mas_equalTo(14);
}];
[self.locateDateStackView addArrangedSubview:[self stackSpaceView]];
[self.locateDateStackView addArrangedSubview:self.locateLabel];
[self.locateDateStackView addArrangedSubview:[self stackSpaceView]];
}
- (void)setupTagsArea {
[self.userInfoView addSubview:self.tagStackView];
///
// [self.tagStackView addArrangedSubview:[self stackSpaceView]];
[self.tagStackView addArrangedSubview:self.newUserImageView];
[self.tagStackView addArrangedSubview:self.officialImageView];
[self.tagStackView addArrangedSubview:self.experImageView];
[self.tagStackView addArrangedSubview:self.charmImageView];
[self.tagStackView addArrangedSubview:self.namePlateView];
[self.tagStackView addArrangedSubview:self.rechargeImageView];
// [self.tagStackView addArrangedSubview:[self stackSpaceView]];
[self.charmImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.size.mas_equalTo(CGSizeMake(36, 18));
}];
[self.namePlateView mas_makeConstraints:^(MASConstraintMaker *make) {
make.width.mas_equalTo(0);
make.height.mas_equalTo(18);
}];
///
[self.namePlateView addSubview:self.nameplateImageView];
@@ -373,103 +334,77 @@ return view;\
[self.nameplateImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.height.mas_equalTo(20);
make.top.mas_equalTo(0);
make.width.mas_equalTo(80);
make.width.mas_equalTo(self.namePlateView);
}];
[self.nameplateLabel mas_makeConstraints:^(MASConstraintMaker *make) {
make.top.bottom.mas_equalTo(self.nameplateImageView);
make.trailing.mas_equalTo(self.namePlateView).offset(-2);
}];
}
[self.tagStackView mas_makeConstraints:^(MASConstraintMaker *make) {
make.top.mas_equalTo(self.locateDateStackView.mas_bottom).offset(4);
make.centerX.mas_equalTo(self.userInfoView);
make.leading.mas_equalTo(self.newUserImageView);
make.trailing.mas_equalTo(self.rechargeImageView);
}];
[self.newUserImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.width.height.mas_equalTo(20);
}];
[self.officialImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.width.height.mas_equalTo(20);
}];
[self.experImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.height.mas_equalTo(20);
make.width.mas_equalTo(34);
}];
[self.charmImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.height.mas_equalTo(20);
make.width.mas_equalTo(34);
}];
[self.rechargeImageView mas_makeConstraints:^(MASConstraintMaker *make) {
- (void)setupLocateArea {
[self.userInfoView addSubview:self.locateLabel];
[self.locateLabel mas_makeConstraints:^(MASConstraintMaker *make) {
make.leading.mas_equalTo(self.userInfoView).offset(kGetScaleWidth(15));
make.height.mas_equalTo(18);
make.width.mas_equalTo(54);
}];
[self.namePlateView mas_makeConstraints:^(MASConstraintMaker *make) {
make.height.mas_equalTo(20);
make.width.mas_equalTo(80);
make.top.mas_equalTo(self.nickStackView.mas_bottom).offset(30);
}];
}
- (void)setupCustomDesc {
[self.userInfoView addSubview:self.signatureLabel];
[self.signatureLabel mas_makeConstraints:^(MASConstraintMaker *make) {
make.centerX.mas_equalTo(self.userInfoView);
make.top.mas_equalTo(self.tagStackView.mas_bottom).offset(4);
make.width.mas_equalTo(KScreenWidth - 70);
make.leading.mas_equalTo(self.userInfoView).offset(kGetScaleWidth(15));
make.trailing.mas_equalTo(self.userInfoView).offset(kGetScaleWidth(-15));
make.top.mas_equalTo(self.locateLabel.mas_bottom).offset(6);
}];
}
- (void)setupRelationshipArea {
[self.userInfoView addSubview:self.relationshipView];
[self.relationshipView mas_makeConstraints:^(MASConstraintMaker *make) {
make.top.mas_equalTo(self.signatureLabel.mas_bottom).offset(10);
make.leading.mas_equalTo(self.userInfoView).offset(14);
make.trailing.mas_equalTo(self.userInfoView).offset(-14);
make.height.mas_equalTo(55);
}];
UIStackView *stack = [[UIStackView alloc] init];
stack.axis = UILayoutConstraintAxisHorizontal;
stack.distribution = UIStackViewDistributionFill;
stack.alignment = UIStackViewAlignmentCenter;
stack.spacing = 30;
UIView *line = [[UIView alloc] init];
line.backgroundColor = [UIColor colorWithWhite:1 alpha:0.6];
[self.relationshipView addSubview:line];
[line mas_makeConstraints:^(MASConstraintMaker *make) {
make.center.mas_equalTo(self.relationshipView);
make.size.mas_equalTo(CGSizeMake(1.5, 20));
}];
UIStackView *stack_follow = [[UIStackView alloc] init];
stack_follow.axis = UILayoutConstraintAxisHorizontal;
stack_follow.distribution = UIStackViewDistributionFill;
stack_follow.alignment = UIStackViewAlignmentFirstBaseline;
stack_follow.spacing = 6;
[stack_follow addArrangedSubview:self.followersNum];
UILabel *followerTitle = [UILabel labelInitWithText:YMLocalizedString(@"XPMineHeadView4")
font:[UIFont systemFontOfSize:13 weight:UIFontWeightBold]
textColor:[UIColor colorWithWhite:1 alpha:0.8]];
font:kFontRegular(12)
textColor:[UIColor colorWithWhite:1 alpha:0.6]];
[stack_follow addArrangedSubview:followerTitle];
UIStackView *stack_fans = [[UIStackView alloc] init];
stack_fans.axis = UILayoutConstraintAxisHorizontal;
stack_fans.distribution = UIStackViewDistributionFill;
stack_fans.alignment = UIStackViewAlignmentFirstBaseline;
stack_fans.spacing = 6;
[stack_fans addArrangedSubview:self.fansNum];
UILabel *fansTitle = [UILabel labelInitWithText:YMLocalizedString(@"XPMineHeadView5")
font:[UIFont systemFontOfSize:13 weight:UIFontWeightBold]
textColor:[UIColor colorWithWhite:1 alpha:0.8]];
[self.relationshipView addSubview:followerTitle];
[followerTitle mas_makeConstraints:^(MASConstraintMaker *make) {
make.top.mas_equalTo(self.relationshipView).offset(10);
make.trailing.mas_equalTo(line.mas_leading).offset(-60);
}];
[self.relationshipView addSubview:fansTitle];
[fansTitle mas_makeConstraints:^(MASConstraintMaker *make) {
make.top.mas_equalTo(self.relationshipView).offset(10);
make.leading.mas_equalTo(line.mas_trailing).offset(60);
}];
font:kFontRegular(12)
textColor:[UIColor colorWithWhite:1 alpha:0.6]];
[stack_fans addArrangedSubview:fansTitle];
[self.relationshipView addSubview:self.followersNum];
[self.followersNum mas_makeConstraints:^(MASConstraintMaker *make) {
make.centerX.mas_equalTo(followerTitle);
make.top.mas_equalTo(followerTitle.mas_bottom).offset(4);
}];
[stack addArrangedSubview:stack_follow];
[stack addArrangedSubview:stack_fans];
[self.relationshipView addSubview:self.fansNum];
[self.fansNum mas_makeConstraints:^(MASConstraintMaker *make) {
make.centerX.mas_equalTo(fansTitle);
make.top.mas_equalTo(fansTitle.mas_bottom).offset(4);
[self.userInfoView addSubview:stack];
[stack mas_makeConstraints:^(MASConstraintMaker *make) {
make.top.mas_equalTo(self.signatureLabel.mas_bottom).offset(6);
make.leading.mas_equalTo(self.userInfoView).offset(kGetScaleWidth(15));
make.height.mas_equalTo(30);
}];
}
- (void)initSubViews {
[self.singStackView addArrangedSubview:self.tagView];
[self.singStackView addArrangedSubview:self.signBackView];
[self.signBackView addSubview:self.signatureLabel];
- (void)setupCPArea {
}
#pragma mark - SDPhotoBrowserDelegate
@@ -511,14 +446,9 @@ return view;\
}
#pragma mark - XPMineUserInfoHeaderTagView
- (void)didClickGotoIvidualView{
if(self.delegate && [self.delegate respondsToSelector:@selector(xPMineUserInfoHeaderView:didClickGotoEditView:)]){
[self.delegate xPMineUserInfoHeaderView:self didClickGotoEditView:self.tagView.itemList];
}
}
- (void)didClickGotoEditVC{
if(self.delegate && [self.delegate respondsToSelector:@selector(xPMineUserInfoHeaderView:didClickGotoEditVC:)]){
[self.delegate xPMineUserInfoHeaderView:self didClickGotoEditVC:self.tagView.itemList];
[self.delegate xPMineUserInfoHeaderView:self didClickGotoEditVC:@[].mutableCopy];
}
}
#pragma mark - Event Response
@@ -587,14 +517,14 @@ return view;\
self.charmImageView.hidden = userInfo.userLevelVo.charmUrl.length <= 0;
if(userInfo.isCustomWord == YES){
if (userInfo.nameplatePic.length > 0) {
self.nameplateImageView.imageUrl = userInfo.nameplatePic;
[self loadNamePlate:userInfo.nameplatePic];
self.namePlateView.hidden = NO;
} else {
self.namePlateView.hidden = YES;
}
}else{
if (userInfo.nameplateWord.length > 0 && userInfo.nameplatePic.length > 0) {
self.nameplateImageView.imageUrl = userInfo.nameplatePic;
[self loadNamePlate:userInfo.nameplatePic];
self.nameplateLabel.text = userInfo.nameplateWord;
self.namePlateView.hidden = NO;
} else {
@@ -643,6 +573,18 @@ return view;\
}
}
- (void)loadNamePlate:(NSString *)imagePath {
[self.nameplateImageView loadImageWithUrl:imagePath completion:^(UIImage * _Nullable image, NSURL * _Nonnull url) {
if (image) {
CGSize size = image.size;
[self.namePlateView mas_updateConstraints:^(MASConstraintMaker *make) {
make.width.mas_equalTo(round(size.width * 18/size.height));
}];
self.nameplateImageView.image = image;
}
}];
}
- (void)setRoomUid:(NSString *)roomUid {
_roomUid = roomUid;
if([XPSkillCardPlayerManager shareInstance].isInRoom == YES || [[XPRoomMiniManager shareManager] getRoomInfo] != nil){
@@ -650,33 +592,6 @@ return view;\
}else{
self.onlineButton.hidden = YES;
}
}
-(void)setTagModel:(XPMineUserInfoTagModel *)tagModel{
_tagModel = tagModel;
NSMutableArray *itemList = [NSMutableArray array];
for (NSString *text in _tagModel.meLabels) {
if(text.length > 0){
XPMineUserInfoTagItemModel *model = [XPMineUserInfoTagItemModel new];
model.label = text;
CGRect stringRect = [text boundingRectWithSize:CGSizeMake(MAXFLOAT, 18)
options:NSStringDrawingUsesLineFragmentOrigin
attributes:@{NSFontAttributeName:[UIFont systemFontOfSize:10 weight:UIFontWeightRegular]}
context:nil];
model.width = stringRect.size.width + 14;
[itemList addObject:model];
}
}
NSString *uid = [[AccountInfoStorage instance]getUid];
BOOL isMe = self.userInfo.uid == uid.integerValue;
if(isMe == YES){
_tagView.hidden = YES;
}else{
// _tagView.hidden = !(itemList.count > 0);
_tagView.hidden = YES;
}
_tagView.uid = @(self.userInfo.uid).stringValue;
_tagView.itemList = itemList;
}
- (void)updateNameAndGenderInfo {
@@ -697,23 +612,23 @@ return view;\
- (void)updateIDInfo {
NSString *text = @"";
BOOL hasBeautifulID = self.userInfo.hasPrettyErbanNo;
if (hasBeautifulID) {
// BOOL hasBeautifulID = self.userInfo.hasPrettyErbanNo;
// if (hasBeautifulID) {
text = [NSString stringWithFormat:@"%ld", (long)self.userInfo.erbanNo];
} else {
text = [NSString stringWithFormat:@" %ld", (long)self.userInfo.erbanNo];
}
// } else {
// text = [NSString stringWithFormat:@" %ld", (long)self.userInfo.erbanNo];
// }
self.idIconImageView.hidden = hasBeautifulID;
if (hasBeautifulID) {
self.beautIDView.num = text;
self.idStackView.hidden = YES;
} else {
self.beautIDView.hidden = YES;
self.idLabel.text = text;
self.idLabel.alpha = 0.8;
}
// self.idIconImageView.hidden = hasBeautifulID;
self.idLabel.text = [NSString stringWithFormat:@"ID:%@", text];
self.beautIDView.num = text;
// if (hasBeautifulID) {
// self.idStackView.hidden = YES;
// } else {
// self.beautIDView.hidden = YES;
// self.idLabel.text = text;
// self.idLabel.alpha = 0.8;
// }
}
- (void)updateLocateAndRegionInfo {
@@ -731,8 +646,8 @@ return view;\
- (void)updateSignatureInfo {
self.signatureLabel.text = _userInfo.userDesc.length > 0 ? self.userInfo.userDesc : YMLocalizedString(@"XPMineUserInfoHeaderView6");
[self.signatureLabel setTextColor:self.userInfo.userDesc.length > 0 ? UIColorFromRGB(0x1a1a1a) : UIColorRGBAlpha(0x1a1a1a, 0.6)];
[self.signatureLabel setFont:self.userInfo.userDesc.length > 0 ? [UIFont systemFontOfSize:12 weight:UIFontWeightMedium] : [UIFont systemFontOfSize:12 weight:UIFontWeightRegular]];
// [self.signatureLabel setTextColor:self.userInfo.userDesc.length > 0 ? UIColorFromRGB(0x1a1a1a) : UIColorRGBAlpha(0x1a1a1a, 0.6)];
// [self.signatureLabel setFont:self.userInfo.userDesc.length > 0 ? [UIFont systemFontOfSize:12 weight:UIFontWeightMedium] : [UIFont systemFontOfSize:12 weight:UIFontWeightRegular]];
}
- (void)updateRelationShipInfo {
@@ -787,10 +702,7 @@ return view;\
- (UIView *)userInfoView {
if (!_userInfoView) {
_userInfoView = [[UIView alloc] init];
_userInfoView.backgroundColor = [UIColor whiteColor];
_userInfoView.layer.masksToBounds = YES;
_userInfoView.layer.cornerRadius = 16;
_userInfoView.clipsToBounds = YES;
_userInfoView.backgroundColor = UIColorFromRGB(0x08151A);
}
return _userInfoView;
}
@@ -800,8 +712,8 @@ return view;\
_nickStackView = [[UIStackView alloc] init];
_nickStackView.backgroundColor = [UIColor clearColor];
_nickStackView.axis = UILayoutConstraintAxisHorizontal;
_nickStackView.distribution = UIStackViewDistributionFill;
_nickStackView.alignment = UIStackViewAlignmentCenter;
_nickStackView.distribution = UIStackViewDistributionFillProportionally;
_nickStackView.alignment = UIStackViewAlignmentLeading;
_nickStackView.spacing = 4;
if (isMSRTL()) {
_nickStackView.semanticContentAttribute = UISemanticContentAttributeForceRightToLeft;
@@ -813,8 +725,8 @@ return view;\
- (UILabel *)nameLabel {
if (!_nameLabel) {
_nameLabel = [[UILabel alloc] init];
_nameLabel.font = [UIFont systemFontOfSize:18 weight:UIFontWeightBold];
_nameLabel.textColor = UIColorFromRGB(0x1A1A1A);
_nameLabel.font = kFontMedium(16);
_nameLabel.textColor = [UIColor whiteColor];
_nameLabel.numberOfLines = 1;
[_nameLabel setContentHuggingPriority:UILayoutPriorityRequired forAxis:UILayoutConstraintAxisHorizontal];
[_nameLabel setContentCompressionResistancePriority:UILayoutPriorityRequired forAxis:UILayoutConstraintAxisHorizontal];
@@ -852,8 +764,8 @@ return view;\
- (UILabel *)idLabel {
if (!_idLabel) {
_idLabel = [[UILabel alloc] init];
_idLabel.font = [UIFont systemFontOfSize:11 weight:UIFontWeightMedium];
_idLabel.textColor = UIColorFromRGB(0x191919);
_idLabel.font = kFontMedium(12);
_idLabel.textColor = [UIColor whiteColor];
_idLabel.textAlignment = NSTextAlignmentCenter;
_idLabel.userInteractionEnabled = YES;
_idLabel.clipsToBounds = NO;
@@ -874,7 +786,7 @@ return view;\
if (!_copyIdImageView) {
_copyIdImageView = [[UIImageView alloc] init];
_copyIdImageView.userInteractionEnabled = YES;
_copyIdImageView.contentMode = UIViewContentModeScaleAspectFit;
_copyIdImageView.contentMode = UIViewContentModeScaleAspectFill;
_copyIdImageView.image = [UIImage getLanguageImage:@"user_card_copy_id1"];
}
return _copyIdImageView;
@@ -910,24 +822,18 @@ return view;\
- (UIButton *)onlineButton {
if (!_onlineButton) {
_onlineButton = [UIButton buttonWithType:UIButtonTypeCustom];
[_onlineButton setBackgroundImage:[UIImage gradientColorImageFromColors:@[UIColorFromRGB(0xf2a20f), UIColorFromRGB(0xffd936)]
gradientType:GradientTypeLeftToRight
imgSize:CGSizeMake(64, 24)]
forState:UIControlStateNormal];
[_onlineButton setBackgroundColor:UIColorFromRGB(0x04D5C6)];
[_onlineButton addTarget:self
action:@selector(onlineButtonAction:)
forControlEvents:UIControlEventTouchUpInside];
[_onlineButton setTitle:[NSString stringWithFormat:@"%@ ", YMLocalizedString(@"XPMineSimpleUserInfoHeaderView2")]
forState:UIControlStateNormal];
[_onlineButton.titleLabel setFont:[UIFont systemFontOfSize:12 weight:UIFontWeightMedium]];
[_onlineButton setTitleColor:UIColorFromRGB(0xf7f7f7) forState:UIControlStateNormal];
// [_onlineButton setImage:[UIImage imageNamed:@"mine_online_mark"] forState:UIControlStateNormal];
[_onlineButton.titleLabel setFont:kFontMedium(12)];
[_onlineButton setEnlargeEdgeWithTop:10 right:10 bottom:10 left:10];
_onlineButton.layer.cornerRadius = 12;
_onlineButton.layer.cornerRadius = 11;
_onlineButton.layer.masksToBounds = YES;
_onlineButton.hidden = YES;
// CGFloat spacing = 4.0; //
_onlineButton.imageEdgeInsets = UIEdgeInsetsMake(0, 40, 0, 0);
_onlineButton.titleEdgeInsets = UIEdgeInsetsMake(0, 24, 0, 0);
}
@@ -955,10 +861,10 @@ return view;\
- (UIButton *)pageButton {
if (!_pageButton) {
_pageButton = [UIButton buttonWithType:UIButtonTypeCustom];
[_pageButton setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal];
_pageButton.titleLabel.font = [UIFont systemFontOfSize:12 weight:UIFontWeightRegular];
_pageButton.backgroundColor = UIColorRGBAlpha(0x000000, 0.4);
_pageButton.layer.cornerRadius = 11;
[_pageButton setTitleColor:UIColorFromRGB(0xfffcfc) forState:UIControlStateNormal];
_pageButton.titleLabel.font = kFontMedium(11);
_pageButton.backgroundColor = UIColorRGBAlpha(0x000000, 0.6);
_pageButton.layer.cornerRadius = 9;
_pageButton.layer.masksToBounds = YES;
}
@@ -1060,22 +966,13 @@ return view;\
return _officialImageView;
}
- (UIView *)signBackView {
if (!_signBackView) {
_signBackView = [[UIView alloc] init];
_signBackView.backgroundColor = [UIColor whiteColor];
}
return _signBackView;
}
- (UILabel *)signatureLabel {
if (!_signatureLabel) {
_signatureLabel = [[UILabel alloc] init];
_signatureLabel.font = [UIFont systemFontOfSize:12 weight:UIFontWeightMedium];
_signatureLabel.textColor = UIColorFromRGB(0x1a1a1a);
_signatureLabel.font = kFontRegular(13);
_signatureLabel.textColor = [UIColor colorWithWhite:1 alpha:0.6];
_signatureLabel.numberOfLines = 0;
_signatureLabel.textAlignment = NSTextAlignmentCenter;
_signatureLabel.textAlignment = NSTextAlignmentNatural;
}
return _signatureLabel;
}
@@ -1099,7 +996,7 @@ return view;\
config.placeHolder = [UIImageConstant defaultAvatarPlaceholder];
config.imageType = ImageTypeUserIcon;
_avatarView = [[NetImageView alloc]initWithConfig:config];
_avatarView.layer.cornerRadius = kGetScaleWidth(36);
_avatarView.layer.cornerRadius = kGetScaleWidth(41);
_avatarView.layer.masksToBounds = YES;
_avatarView.layer.borderWidth = 1;
_avatarView.userInteractionEnabled = YES;
@@ -1127,24 +1024,7 @@ return view;\
}
return _manager;
}
-(XPMineUserInfoHeaderTagView *)tagView{
if (!_tagView){
_tagView = [[XPMineUserInfoHeaderTagView alloc]initWithFrame:CGRectZero];
_tagView.delegate = self;
}
return _tagView;
}
- (UIStackView *)singStackView {
if (!_singStackView) {
_singStackView = [[UIStackView alloc] init];
_singStackView.backgroundColor = [UIColor clearColor];
_singStackView.axis = UILayoutConstraintAxisVertical;
_singStackView.distribution = UIStackViewDistributionFill;
_singStackView.alignment = UIStackViewAlignmentCenter;
_singStackView.spacing = 11;
}
return _singStackView;
}
- (NetImageView *)rechargeImageView{
if(!_rechargeImageView){
_rechargeImageView = [NetImageView new];
@@ -1177,33 +1057,16 @@ return view;\
- (UILabel *)locateLabel {
if (!_locateLabel) {
_locateLabel = [[UILabel alloc] init];
_locateLabel.font = [UIFont systemFontOfSize:12 weight:UIFontWeightMedium];
_locateLabel.textColor = UIColorFromRGB(0x1a1a1a);
_locateLabel.font = kFontMedium(12);
_locateLabel.textColor = [UIColor colorWithWhite:1 alpha:0.6];
}
return _locateLabel;
}
- (UIImageView *)relationshipView {
if (!_relationshipView) {
_relationshipView = [[UIImageView alloc] init];
_relationshipView.image = [UIImage gradientColorImageFromColors:@[UIColorFromRGB(0x41EABA), UIColorFromRGB(0x26cc9c)]
gradientType:GradientTypeTopToBottom
imgSize:CGSizeMake(360, 55)];
_relationshipView.layer.cornerRadius = 14.5;
_relationshipView.layer.masksToBounds = YES;
_relationshipView.userInteractionEnabled = YES;
}
return _relationshipView;
}
- (UIView *)stackSpaceView {
return [UIView new];
}
- (UILabel *)fansNum {
if (!_fansNum) {
_fansNum = [[UILabel alloc] init];
_fansNum.font = [UIFont systemFontOfSize:18 weight:UIFontWeightBold];
_fansNum.font = kFontSemibold(20);
_fansNum.textColor = [UIColor whiteColor];
}
return _fansNum;
@@ -1212,7 +1075,7 @@ return view;\
- (UILabel *)followersNum {
if (!_followersNum) {
_followersNum = [[UILabel alloc] init];
_followersNum.font = [UIFont systemFontOfSize:18 weight:UIFontWeightBold];
_followersNum.font = kFontSemibold(20);
_followersNum.textColor = [UIColor whiteColor];
}
return _followersNum;

View File

@@ -104,6 +104,8 @@
}
- (void)registerActions:(void (^)(ComboActionType))action {
_combo = 1;
_errorMessage = @"";
self.actionCallback = action;
}

View File

@@ -14,7 +14,7 @@ NS_ASSUME_NONNULL_BEGIN
/// @param uid 查询的用户的uid
- (void)getUserInfo:(NSString *)uid;
/// 获取用户钱包信息
- (void)getUserWallInfo;
- (void)getUserWalletInfo;
/// 获取面板 Tags 和所有普通礼物,替代 getNormalGiftList:
/// @param roomUid 房主的uid 获取房间专属礼物

View File

@@ -41,7 +41,7 @@
}
///
- (void)getUserWallInfo {
- (void)getUserWalletInfo {
NSString * uid = [AccountInfoStorage instance].getUid;
NSString * ticket = [AccountInfoStorage instance].getTicket;
@kWeakify(self);

View File

@@ -114,7 +114,9 @@ UIKIT_EXTERN NSString * kShowFirstRechargeView;
}
-(void)dealloc{
[[NSNotificationCenter defaultCenter]removeObserver:self];
[[NSNotificationCenter defaultCenter] removeObserver:self];
[[GiftComboManager sharedManager] registerActions:nil];
}
- (instancetype)initWithType:(SendGiftType)type uid:(NSString * __nullable)uid{
@@ -246,7 +248,7 @@ UIKIT_EXTERN NSString * kShowFirstRechargeView;
// [self.presenter getNormalGiftList:self.roomUid];
[self.presenter getTagsAndGifts:self.roomUid];
[self.presenter getUserInfo:[AccountInfoStorage instance].getUid];
[self.presenter getUserWallInfo];
[self.presenter getUserWalletInfo];
[self.presenter luckyGiftBroadcastRecord];
if (self.didLoadPackGiftList) {

View File

@@ -283,9 +283,8 @@ NSString * const kHadQuitOtherRoomKey = @"kHadQuitOtherRoomKey";//是否退出
[[NIMSDK sharedSDK].loginManager removeDelegate:self];
[[NIMSDK sharedSDK].conversationManager removeDelegate:self];
[[NIMSDK sharedSDK].broadcastManager removeDelegate:self];
[[NSNotificationCenter defaultCenter] removeObserver:self];
[self removeComboManager];
[[NSNotificationCenter defaultCenter] removeObserver:self];
}
- (XPRoomPresenter *)createPresenter {
@@ -360,10 +359,6 @@ NSString * const kHadQuitOtherRoomKey = @"kHadQuitOtherRoomKey";//是否退出
[[NIMSDK sharedSDK].broadcastManager addDelegate:self];
}
- (void)removeComboManager {
[[GiftComboManager sharedManager] registerActions:nil];
}
/// -2: roomUid
- (void)preLoadGifts {
[self.presenter getNormalGiftList:self.roomUid];