diff --git a/YuMi.xcodeproj/project.pbxproj b/YuMi.xcodeproj/project.pbxproj index 34f1008b..3f348468 100644 --- a/YuMi.xcodeproj/project.pbxproj +++ b/YuMi.xcodeproj/project.pbxproj @@ -12860,6 +12860,10 @@ PRODUCT_BUNDLE_IDENTIFIER = com.peko.enterprise.ios; PRODUCT_NAME = "$(TARGET_NAME)"; PROVISIONING_PROFILE_SPECIFIER = ""; + SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; + SUPPORTS_MACCATALYST = NO; + SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO; + SUPPORTS_XR_DESIGNED_FOR_IPHONE_IPAD = NO; SWIFT_OBJC_BRIDGING_HEADER = ""; SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = 1; @@ -12898,6 +12902,10 @@ PRODUCT_BUNDLE_IDENTIFIER = com.peko.enterprise.ios; PRODUCT_NAME = "$(TARGET_NAME)"; PROVISIONING_PROFILE_SPECIFIER = ""; + SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; + SUPPORTS_MACCATALYST = NO; + SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO; + SUPPORTS_XR_DESIGNED_FOR_IPHONE_IPAD = NO; SWIFT_COMPILATION_MODE = singlefile; SWIFT_OBJC_BRIDGING_HEADER = ""; SWIFT_VERSION = 5.0; diff --git a/YuMi/Assets.xcassets/AppIcon.appiconset/1024.png b/YuMi/Assets.xcassets/AppIcon.appiconset/1024.png deleted file mode 100644 index a60f88f8..00000000 Binary files a/YuMi/Assets.xcassets/AppIcon.appiconset/1024.png and /dev/null differ diff --git a/YuMi/Assets.xcassets/AppIcon.appiconset/1024_副本.png b/YuMi/Assets.xcassets/AppIcon.appiconset/1024_副本.png new file mode 100644 index 00000000..e6d60ee5 Binary files /dev/null and b/YuMi/Assets.xcassets/AppIcon.appiconset/1024_副本.png differ diff --git a/YuMi/Assets.xcassets/AppIcon.appiconset/Contents.json b/YuMi/Assets.xcassets/AppIcon.appiconset/Contents.json index cff1680b..f7eba921 100644 --- a/YuMi/Assets.xcassets/AppIcon.appiconset/Contents.json +++ b/YuMi/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -1,7 +1,7 @@ { "images" : [ { - "filename" : "1024.png", + "filename" : "1024_副本.png", "idiom" : "universal", "platform" : "ios", "size" : "1024x1024" diff --git a/YuMi/Assets.xcassets/Language/ar/home_hour_no_1_ar.imageset/Contents.json b/YuMi/Assets.xcassets/Language/ar/home_hour_no_1_ar.imageset/Contents.json index f4ccaced..ec77fbfd 100644 --- a/YuMi/Assets.xcassets/Language/ar/home_hour_no_1_ar.imageset/Contents.json +++ b/YuMi/Assets.xcassets/Language/ar/home_hour_no_1_ar.imageset/Contents.json @@ -5,12 +5,11 @@ "scale" : "1x" }, { - "filename" : "home_hour_no_1_ar@2x.png", "idiom" : "universal", "scale" : "2x" }, { - "filename" : "home_hour_no_1_ar@3x.png", + "filename" : "图层 2@3x (1).png", "idiom" : "universal", "scale" : "3x" } diff --git a/YuMi/Assets.xcassets/Language/ar/home_hour_no_1_ar.imageset/home_hour_no_1_ar@2x.png b/YuMi/Assets.xcassets/Language/ar/home_hour_no_1_ar.imageset/home_hour_no_1_ar@2x.png deleted file mode 100644 index 9003e8c0..00000000 Binary files a/YuMi/Assets.xcassets/Language/ar/home_hour_no_1_ar.imageset/home_hour_no_1_ar@2x.png and /dev/null differ diff --git a/YuMi/Assets.xcassets/Language/ar/home_hour_no_1_ar.imageset/home_hour_no_1_ar@3x.png b/YuMi/Assets.xcassets/Language/ar/home_hour_no_1_ar.imageset/home_hour_no_1_ar@3x.png deleted file mode 100644 index b54c0cce..00000000 Binary files a/YuMi/Assets.xcassets/Language/ar/home_hour_no_1_ar.imageset/home_hour_no_1_ar@3x.png and /dev/null differ diff --git a/YuMi/Assets.xcassets/Language/ar/home_hour_no_1_ar.imageset/图层 2@3x (1).png b/YuMi/Assets.xcassets/Language/ar/home_hour_no_1_ar.imageset/图层 2@3x (1).png new file mode 100644 index 00000000..0a0f94fe Binary files /dev/null and b/YuMi/Assets.xcassets/Language/ar/home_hour_no_1_ar.imageset/图层 2@3x (1).png differ diff --git a/YuMi/Assets.xcassets/Language/ar/home_week_no_1_ar.imageset/Contents.json b/YuMi/Assets.xcassets/Language/ar/home_week_no_1_ar.imageset/Contents.json index 7781bfa7..82ac345c 100644 --- a/YuMi/Assets.xcassets/Language/ar/home_week_no_1_ar.imageset/Contents.json +++ b/YuMi/Assets.xcassets/Language/ar/home_week_no_1_ar.imageset/Contents.json @@ -5,12 +5,11 @@ "scale" : "1x" }, { - "filename" : "home_week_no_1_ar@2x.png", "idiom" : "universal", "scale" : "2x" }, { - "filename" : "home_week_no_1_ar@3x.png", + "filename" : "图层 1@3x (1).png", "idiom" : "universal", "scale" : "3x" } diff --git a/YuMi/Assets.xcassets/Language/ar/home_week_no_1_ar.imageset/home_week_no_1_ar@2x.png b/YuMi/Assets.xcassets/Language/ar/home_week_no_1_ar.imageset/home_week_no_1_ar@2x.png deleted file mode 100644 index 2ddfa32c..00000000 Binary files a/YuMi/Assets.xcassets/Language/ar/home_week_no_1_ar.imageset/home_week_no_1_ar@2x.png and /dev/null differ diff --git a/YuMi/Assets.xcassets/Language/ar/home_week_no_1_ar.imageset/home_week_no_1_ar@3x.png b/YuMi/Assets.xcassets/Language/ar/home_week_no_1_ar.imageset/home_week_no_1_ar@3x.png deleted file mode 100644 index 541c425c..00000000 Binary files a/YuMi/Assets.xcassets/Language/ar/home_week_no_1_ar.imageset/home_week_no_1_ar@3x.png and /dev/null differ diff --git a/YuMi/Assets.xcassets/Language/ar/home_week_no_1_ar.imageset/图层 1@3x (1).png b/YuMi/Assets.xcassets/Language/ar/home_week_no_1_ar.imageset/图层 1@3x (1).png new file mode 100644 index 00000000..0b4e3e62 Binary files /dev/null and b/YuMi/Assets.xcassets/Language/ar/home_week_no_1_ar.imageset/图层 1@3x (1).png differ diff --git a/YuMi/Assets.xcassets/Language/en/home_hour_no_1_en.imageset/Contents.json b/YuMi/Assets.xcassets/Language/en/home_hour_no_1_en.imageset/Contents.json index d5dcfa2a..73d35c5b 100644 --- a/YuMi/Assets.xcassets/Language/en/home_hour_no_1_en.imageset/Contents.json +++ b/YuMi/Assets.xcassets/Language/en/home_hour_no_1_en.imageset/Contents.json @@ -5,12 +5,11 @@ "scale" : "1x" }, { - "filename" : "home_hour_no_1_en@2x.png", "idiom" : "universal", "scale" : "2x" }, { - "filename" : "home_hour_no_1_en@3x.png", + "filename" : "图层 2@3x.png", "idiom" : "universal", "scale" : "3x" } diff --git a/YuMi/Assets.xcassets/Language/en/home_hour_no_1_en.imageset/home_hour_no_1_en@2x.png b/YuMi/Assets.xcassets/Language/en/home_hour_no_1_en.imageset/home_hour_no_1_en@2x.png deleted file mode 100644 index 1329a2e2..00000000 Binary files a/YuMi/Assets.xcassets/Language/en/home_hour_no_1_en.imageset/home_hour_no_1_en@2x.png and /dev/null differ diff --git a/YuMi/Assets.xcassets/Language/en/home_hour_no_1_en.imageset/home_hour_no_1_en@3x.png b/YuMi/Assets.xcassets/Language/en/home_hour_no_1_en.imageset/home_hour_no_1_en@3x.png deleted file mode 100644 index 01958ea9..00000000 Binary files a/YuMi/Assets.xcassets/Language/en/home_hour_no_1_en.imageset/home_hour_no_1_en@3x.png and /dev/null differ diff --git a/YuMi/Assets.xcassets/Language/en/home_hour_no_1_en.imageset/图层 2@3x.png b/YuMi/Assets.xcassets/Language/en/home_hour_no_1_en.imageset/图层 2@3x.png new file mode 100644 index 00000000..76545a31 Binary files /dev/null and b/YuMi/Assets.xcassets/Language/en/home_hour_no_1_en.imageset/图层 2@3x.png differ diff --git a/YuMi/Assets.xcassets/Language/en/home_week_no_1_en.imageset/Contents.json b/YuMi/Assets.xcassets/Language/en/home_week_no_1_en.imageset/Contents.json index c44e348d..838d9239 100644 --- a/YuMi/Assets.xcassets/Language/en/home_week_no_1_en.imageset/Contents.json +++ b/YuMi/Assets.xcassets/Language/en/home_week_no_1_en.imageset/Contents.json @@ -5,12 +5,11 @@ "scale" : "1x" }, { - "filename" : "home_week_no_1_en@2x.png", "idiom" : "universal", "scale" : "2x" }, { - "filename" : "home_week_no_1_en@3x.png", + "filename" : "图层 1@3x.png", "idiom" : "universal", "scale" : "3x" } diff --git a/YuMi/Assets.xcassets/Language/en/home_week_no_1_en.imageset/home_week_no_1_en@2x.png b/YuMi/Assets.xcassets/Language/en/home_week_no_1_en.imageset/home_week_no_1_en@2x.png deleted file mode 100644 index a0875b23..00000000 Binary files a/YuMi/Assets.xcassets/Language/en/home_week_no_1_en.imageset/home_week_no_1_en@2x.png and /dev/null differ diff --git a/YuMi/Assets.xcassets/Language/en/home_week_no_1_en.imageset/home_week_no_1_en@3x.png b/YuMi/Assets.xcassets/Language/en/home_week_no_1_en.imageset/home_week_no_1_en@3x.png deleted file mode 100644 index 474d40cd..00000000 Binary files a/YuMi/Assets.xcassets/Language/en/home_week_no_1_en.imageset/home_week_no_1_en@3x.png and /dev/null differ diff --git a/YuMi/Assets.xcassets/Language/en/home_week_no_1_en.imageset/图层 1@3x.png b/YuMi/Assets.xcassets/Language/en/home_week_no_1_en.imageset/图层 1@3x.png new file mode 100644 index 00000000..44a50f3b Binary files /dev/null and b/YuMi/Assets.xcassets/Language/en/home_week_no_1_en.imageset/图层 1@3x.png differ diff --git a/YuMi/Assets.xcassets/utils/user_info_id_beatiful_mark_short.imageset/Contents.json b/YuMi/Assets.xcassets/utils/user_info_id_beatiful_mark_short.imageset/Contents.json new file mode 100644 index 00000000..640c2833 --- /dev/null +++ b/YuMi/Assets.xcassets/utils/user_info_id_beatiful_mark_short.imageset/Contents.json @@ -0,0 +1,22 @@ +{ + "images" : [ + { + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "user_info_id_beatiful_mark_short@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "user_info_id_beatiful_mark_short@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/YuMi/Assets.xcassets/utils/user_info_id_beatiful_mark_short.imageset/user_info_id_beatiful_mark_short@2x.png b/YuMi/Assets.xcassets/utils/user_info_id_beatiful_mark_short.imageset/user_info_id_beatiful_mark_short@2x.png new file mode 100644 index 00000000..8d440263 Binary files /dev/null and b/YuMi/Assets.xcassets/utils/user_info_id_beatiful_mark_short.imageset/user_info_id_beatiful_mark_short@2x.png differ diff --git a/YuMi/Assets.xcassets/utils/user_info_id_beatiful_mark_short.imageset/user_info_id_beatiful_mark_short@3x.png b/YuMi/Assets.xcassets/utils/user_info_id_beatiful_mark_short.imageset/user_info_id_beatiful_mark_short@3x.png new file mode 100644 index 00000000..05fb916a Binary files /dev/null and b/YuMi/Assets.xcassets/utils/user_info_id_beatiful_mark_short.imageset/user_info_id_beatiful_mark_short@3x.png differ diff --git a/YuMi/Assets.xcassets/yna/room_header_topic_icon.imageset/Contents.json b/YuMi/Assets.xcassets/yna/room_header_topic_icon.imageset/Contents.json index 5a2b9dfc..9dca2f7d 100644 --- a/YuMi/Assets.xcassets/yna/room_header_topic_icon.imageset/Contents.json +++ b/YuMi/Assets.xcassets/yna/room_header_topic_icon.imageset/Contents.json @@ -5,12 +5,12 @@ "scale" : "1x" }, { - "filename" : "room_header_topic_icon@2x.png", + "filename" : "组 2217@2x.png", "idiom" : "universal", "scale" : "2x" }, { - "filename" : "room_header_topic_icon@3x.png", + "filename" : "组 2217@3x.png", "idiom" : "universal", "scale" : "3x" } diff --git a/YuMi/Assets.xcassets/yna/room_header_topic_icon.imageset/room_header_topic_icon@2x.png b/YuMi/Assets.xcassets/yna/room_header_topic_icon.imageset/room_header_topic_icon@2x.png deleted file mode 100644 index 9ee6656d..00000000 Binary files a/YuMi/Assets.xcassets/yna/room_header_topic_icon.imageset/room_header_topic_icon@2x.png and /dev/null differ diff --git a/YuMi/Assets.xcassets/yna/room_header_topic_icon.imageset/room_header_topic_icon@3x.png b/YuMi/Assets.xcassets/yna/room_header_topic_icon.imageset/room_header_topic_icon@3x.png deleted file mode 100644 index 420c9090..00000000 Binary files a/YuMi/Assets.xcassets/yna/room_header_topic_icon.imageset/room_header_topic_icon@3x.png and /dev/null differ diff --git a/YuMi/Assets.xcassets/yna/room_header_topic_icon.imageset/组 2217@2x.png b/YuMi/Assets.xcassets/yna/room_header_topic_icon.imageset/组 2217@2x.png new file mode 100644 index 00000000..6d24b39a Binary files /dev/null and b/YuMi/Assets.xcassets/yna/room_header_topic_icon.imageset/组 2217@2x.png differ diff --git a/YuMi/Assets.xcassets/yna/room_header_topic_icon.imageset/组 2217@3x.png b/YuMi/Assets.xcassets/yna/room_header_topic_icon.imageset/组 2217@3x.png new file mode 100644 index 00000000..f57722ea Binary files /dev/null and b/YuMi/Assets.xcassets/yna/room_header_topic_icon.imageset/组 2217@3x.png differ diff --git a/YuMi/Modules/YMMine/View/Cell/MineInfo/XPMineAlbumTableViewCell.m b/YuMi/Modules/YMMine/View/Cell/MineInfo/XPMineAlbumTableViewCell.m index 12253468..a44fef7b 100644 --- a/YuMi/Modules/YMMine/View/Cell/MineInfo/XPMineAlbumTableViewCell.m +++ b/YuMi/Modules/YMMine/View/Cell/MineInfo/XPMineAlbumTableViewCell.m @@ -105,7 +105,7 @@ didSelectItemAtIndexPath:(NSIndexPath *)indexPath { #pragma mark - UICollectionViewDelegateFlowLayout - (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath { - return CGSizeMake(80, 80); + return CGSizeMake(81, 81); } #pragma mark - SDPhotoBrowserDelegate @@ -126,8 +126,8 @@ didSelectItemAtIndexPath:(NSIndexPath *)indexPath { if (!_albumCollectionView) { UICollectionViewFlowLayout *layout = [[UICollectionViewFlowLayout alloc] init]; layout.scrollDirection = UICollectionViewScrollDirectionHorizontal; - layout.minimumInteritemSpacing = 10; - layout.minimumLineSpacing = 10; + layout.minimumInteritemSpacing = 4.5; + layout.minimumLineSpacing = 4.5; _albumCollectionView = [[UICollectionView alloc] initWithFrame:CGRectZero collectionViewLayout:layout]; _albumCollectionView.backgroundColor = [UIColor clearColor]; diff --git a/YuMi/Modules/YMMine/View/Cell/MineInfo/XPMineGiftsTableViewCell.m b/YuMi/Modules/YMMine/View/Cell/MineInfo/XPMineGiftsTableViewCell.m index 49cb1223..f23002f2 100644 --- a/YuMi/Modules/YMMine/View/Cell/MineInfo/XPMineGiftsTableViewCell.m +++ b/YuMi/Modules/YMMine/View/Cell/MineInfo/XPMineGiftsTableViewCell.m @@ -148,8 +148,9 @@ self.contentView.backgroundColor = [UIColor whiteColor]; [self.contentView addSubview:self.giftsCollectionView]; [self.giftsCollectionView mas_makeConstraints:^(MASConstraintMaker *make) { - make.left.mas_equalTo(self.contentView).offset(14); - make.edges.mas_equalTo(self.contentView); +// make.left.mas_equalTo(self.contentView).offset(14); + make.top.mas_equalTo(self.contentView).offset(0); + make.left.right.bottom.mas_equalTo(self.contentView); }]; [self.contentView addSubview:self.noDataLabel]; @@ -173,7 +174,7 @@ + (CGFloat)cellHeight:(BOOL)isExpand source:(NSArray *)dataSource { - NSInteger width = (KScreenWidth - 28 - 30)/4; + NSInteger width = (KScreenWidth - 28 - 2.5*3)/4; NSInteger height = width * 120 / 86; if (isExpand) { @@ -209,7 +210,7 @@ - (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath { - NSInteger width = (KScreenWidth - 28 - 30)/4; + NSInteger width = (KScreenWidth - 28 - 2.5*3)/4; NSInteger height = width * 120 / 86; return CGSizeMake(width, height); } @@ -219,7 +220,7 @@ if (!_giftsCollectionView) { UICollectionViewFlowLayout *layout = [[UICollectionViewFlowLayout alloc] init]; layout.scrollDirection = UICollectionViewScrollDirectionVertical; - layout.minimumInteritemSpacing = 10; + layout.minimumInteritemSpacing = 2.5; layout.minimumLineSpacing = 10; _giftsCollectionView = [[UICollectionView alloc] initWithFrame:CGRectZero collectionViewLayout:layout]; diff --git a/YuMi/Modules/YMMine/View/MineInfo/XPMineUserDataViewController.m b/YuMi/Modules/YMMine/View/MineInfo/XPMineUserDataViewController.m index f6790204..baf540ab 100644 --- a/YuMi/Modules/YMMine/View/MineInfo/XPMineUserDataViewController.m +++ b/YuMi/Modules/YMMine/View/MineInfo/XPMineUserDataViewController.m @@ -310,8 +310,11 @@ typedef enum : NSUInteger { } } -(CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section{ + if (section == Medal) { return self.medalInfo.medalCount == 0 ? 0 : 30; + } else if (section == Gifts || section == LuckyGifts) { + return 50; } return 30; } diff --git a/YuMi/Modules/YMMine/View/MineInfo/XPMineUserInfoViewController.m b/YuMi/Modules/YMMine/View/MineInfo/XPMineUserInfoViewController.m index 69478023..a02841eb 100644 --- a/YuMi/Modules/YMMine/View/MineInfo/XPMineUserInfoViewController.m +++ b/YuMi/Modules/YMMine/View/MineInfo/XPMineUserInfoViewController.m @@ -172,7 +172,6 @@ XPMineCustomNavViewDelegate, XPMineUserInfoProtocol, XPMineUserInfoHeaderViewDel return [KeyWithType(KeyType_SecretaryUidKey) isEqualToString:[NSString stringWithFormat:@"%ld", self.uid]] || [KeyWithType(KeyType_SystemNotifiUidKey) isEqualToString:[NSString stringWithFormat:@"%ld", self.uid]] || [KeyWithType(KeyType_GuildUidKey) isEqualToString:[NSString stringWithFormat:@"%ld", self.uid]]; } - - (void)showRightNavHandle { NSMutableArray *array = [NSMutableArray array]; NSString *uid = [NSString stringWithFormat:@"%ld",self.uid]; diff --git a/YuMi/Modules/YMMine/View/SubViews/MineInfo/XPMineUserInfoHeaderView.m b/YuMi/Modules/YMMine/View/SubViews/MineInfo/XPMineUserInfoHeaderView.m index 347098df..c7a635c8 100644 --- a/YuMi/Modules/YMMine/View/SubViews/MineInfo/XPMineUserInfoHeaderView.m +++ b/YuMi/Modules/YMMine/View/SubViews/MineInfo/XPMineUserInfoHeaderView.m @@ -76,6 +76,7 @@ return view;\ @property (nonatomic,strong) UIImageView *beautifulImageView; ///id @property (nonatomic,strong) UILabel *idLabel; +@property (nonatomic, strong) UIImageView *idIconImageView; /// @property (nonatomic, strong) UIImageView *copyIdImageView; @@ -129,6 +130,8 @@ return view;\ @property (nonatomic, strong) UILabel *fansNum; @property (nonatomic, strong) UILabel *followersNum; + + @end @implementation XPMineUserInfoHeaderView @@ -145,7 +148,7 @@ return view;\ + (CGFloat)headerHeight:(UserInfoModel *)model { if (model.userDesc.length == 0) { - return 500; + return 470; } else { // 限定宽度 CGFloat maxWidth = KScreenWidth - 70; @@ -165,7 +168,7 @@ return view;\ // 计算行数 NSInteger numberOfLines = ceil(textRect.size.height / lineHeight); if (numberOfLines>1) { - return 520; + return 480; } } return 500; @@ -194,7 +197,7 @@ return view;\ [self.onlineButton addSubview:self.onlineIconView]; [self.onlineIconView mas_makeConstraints:^(MASConstraintMaker *make) { - make.leading.mas_equalTo(4); + make.leading.mas_equalTo(8); make.centerY.mas_equalTo(0); make.width.mas_equalTo(12); make.height.mas_equalTo(12); @@ -208,9 +211,7 @@ return view;\ self.onlineIconView.clearsAfterStop = NO; self.onlineIconView.videoItem = videoItem; [self.onlineIconView startAnimation]; - } failureBlock:^(NSError * _Nonnull error) { - - }]; + } failureBlock:^(NSError * _Nonnull error) { }]; [self addSubview:self.pageButton]; [self.pageButton mas_makeConstraints:^(MASConstraintMaker *make) { @@ -262,19 +263,15 @@ return view;\ [self.nickStackView mas_makeConstraints:^(MASConstraintMaker *make) { make.centerX.mas_equalTo(self.userInfoView); - make.top.mas_equalTo(self.avatarView.mas_bottom).offset(18); - make.height.mas_equalTo(25); + make.top.mas_equalTo(self.avatarView.mas_bottom).offset(10); + make.height.mas_equalTo(20); }]; - [self.nameLabel mas_makeConstraints:^(MASConstraintMaker *make) { - make.height.mas_equalTo(25); - make.width.mas_equalTo(10); - }]; [self.nobleImageView mas_makeConstraints:^(MASConstraintMaker *make) { make.width.height.mas_equalTo(20); }]; [self.sexImageView mas_makeConstraints:^(MASConstraintMaker *make) { - make.size.mas_equalTo(CGSizeMake(28, 14)); + make.height.mas_equalTo(14); }]; } @@ -282,6 +279,7 @@ return view;\ [self.userInfoView addSubview:self.idStackView]; [self.idStackView addArrangedSubview:self.idLabel]; + [self.idStackView addSubview:self.idIconImageView]; [self.idStackView addSubview:self.copyIdImageView]; [self.idStackView insertSubview:self.beautifulImageView belowSubview:self.idLabel]; @@ -291,18 +289,18 @@ return view;\ } else { make.centerX.mas_equalTo(self.userInfoView); } - make.top.mas_equalTo(self.nickStackView.mas_bottom).offset(4); + make.top.mas_equalTo(self.nickStackView.mas_bottom).offset(6); }]; [self.beautifulImageView mas_makeConstraints:^(MASConstraintMaker *make) { make.height.mas_equalTo(23.5); - make.left.mas_equalTo(self.idLabel).offset(-24); - make.right.mas_equalTo(self.idLabel).offset(8); + make.left.mas_equalTo(self.idLabel).offset(-18); + make.right.mas_equalTo(self.idLabel).offset(4); + make.centerY.mas_equalTo(self.idLabel).offset(-0.5); + }]; + [self.idIconImageView mas_makeConstraints:^(MASConstraintMaker *make) { + make.width.height.mas_equalTo(14); make.centerY.mas_equalTo(self.idLabel); - if (isMSRTL()) { -// make.centerX.mas_equalTo(self.idLabel).offset(-8); - } else { - make.centerX.mas_equalTo(self.idLabel).offset(-10); - } + make.right.mas_equalTo(self.idLabel.mas_left).offset(0); }]; [self.idLabel mas_makeConstraints:^(MASConstraintMaker *make) { make.height.mas_equalTo(14); @@ -313,7 +311,7 @@ return view;\ if (isMSRTL()) { make.right.mas_equalTo(self.idLabel.mas_left).offset(-24); } else { - make.left.mas_equalTo(self.idLabel.mas_right).offset(8); + make.left.mas_equalTo(self.idLabel.mas_right).offset(0); } }]; } @@ -325,7 +323,7 @@ return view;\ make.top.mas_equalTo(self.idStackView.mas_bottom).offset(4); }]; [self.locateLabel mas_makeConstraints:^(MASConstraintMaker *make) { - make.height.mas_equalTo(16); + make.height.mas_equalTo(14); }]; [self.locateDateStackView addArrangedSubview:[self stackSpaceView]]; [self.locateDateStackView addArrangedSubview:self.locateLabel]; @@ -627,10 +625,10 @@ return view;\ _userInfo = userInfo; if (_userInfo) { self.nameLabel.text = userInfo.nick; - CGFloat width = [self widthOfText:userInfo.nick withFont:self.nameLabel.font] + 4; - [self.nameLabel mas_updateConstraints:^(MASConstraintMaker *make) { - make.width.mas_equalTo(width); - }]; +// CGFloat width = [self widthOfText:userInfo.nick withFont:self.nameLabel.font]; +// [self.nameLabel mas_updateConstraints:^(MASConstraintMaker *make) { +// make.width.mas_equalTo(width); +// }]; NSString *locateString = @""; if (userInfo.region.length > 0) { @@ -658,37 +656,54 @@ return view;\ } else { text = [NSString stringWithFormat:@" %ld", (long)_userInfo.erbanNo]; } - NSMutableAttributedString *textAtt = [[NSMutableAttributedString alloc]initWithString:[NSString stringWithFormat:@"%@",text] attributes:@{NSForegroundColorAttributeName:UIColorFromRGB(0x191919)}]; - NSTextAttachment * attachment_id = [[NSTextAttachment alloc] init]; - UIImage *idIconImage = [UIImage imageNamed:@"user_info_id_mark"]; - attachment_id.bounds = CGRectMake(0, -1, 11, 11); - attachment_id.image = idIconImage; - if (!hasBeautifulID) { - [textAtt insertAttributedString:[NSMutableAttributedString attributedStringWithAttachment:attachment_id] atIndex:0]; + NSString *offsetSpace = @""; + if (hasBeautifulID) { + if (_userInfo.erbanNo > 9) { + offsetSpace = @" "; + } else if (_userInfo.erbanNo > 99) { + offsetSpace = @" "; + } else if (_userInfo.erbanNo > 999) { + offsetSpace = @""; + } } - self.idLabel.attributedText = textAtt; + self.idLabel.text = [NSString stringWithFormat:@"%@%@",offsetSpace,text]; self.beautifulImageView.hidden = !hasBeautifulID; + self.idIconImageView.hidden = hasBeautifulID; if (hasBeautifulID) { self.idLabel.alpha = 1; self.idLabel.textColor = [UIColor whiteColor]; - // 加载原始图片 - UIImage *originalImage = [UIImage imageNamed:@"user_info_id_beatiful_mark"]; + if (_userInfo.erbanNo > 999) { + // 加载原始图片 + UIImage *originalImage = [UIImage imageNamed:@"user_info_id_beatiful_mark"]; - // 设置图片拉伸区域的插入值 (cap insets) - UIEdgeInsets capInsets = UIEdgeInsetsMake(0, 30, 0, 20); + // 设置图片拉伸区域的插入值 (cap insets) + UIEdgeInsets capInsets = UIEdgeInsetsMake(0, 20, 0, 4); - // 创建拉伸后的图片 - UIImage *resizableImage = [originalImage resizableImageWithCapInsets:capInsets resizingMode:UIImageResizingModeStretch]; + // 创建拉伸后的图片 + UIImage *resizableImage = [originalImage resizableImageWithCapInsets:capInsets resizingMode:UIImageResizingModeStretch]; - // 设置 - self.beautifulImageView.image = resizableImage; + // 设置 + self.beautifulImageView.image = resizableImage; + } else { + UIImage *originalImage = [UIImage imageNamed:@"user_info_id_beatiful_mark_short"]; + self.beautifulImageView.image = originalImage; + } + [self.copyIdImageView mas_updateConstraints:^(MASConstraintMaker *make) { + if (isMSRTL()) { + make.right.mas_equalTo(self.idLabel.mas_left).offset(-24); + } else { + make.left.mas_equalTo(self.idLabel.mas_right).offset(6); + } + }]; } else { self.idLabel.alpha = 0.8; - if (isMSRTL()) { - [self.copyIdImageView mas_updateConstraints:^(MASConstraintMaker *make) { - make.right.mas_equalTo(self.idLabel.mas_left).offset(-6); - }]; - } + [self.copyIdImageView mas_updateConstraints:^(MASConstraintMaker *make) { + if (isMSRTL()) { + make.right.mas_equalTo(self.idLabel.mas_left).offset(-24); + } else { + make.left.mas_equalTo(self.idLabel.mas_right).offset(2); + } + }]; } self.signLabel.text = _userInfo.userDesc.length > 0 ? _userInfo.userDesc : YMLocalizedString(@"XPMineUserInfoHeaderView6"); @@ -696,11 +711,22 @@ return view;\ [self.signLabel setFont:_userInfo.userDesc.length > 0 ? [UIFont systemFontOfSize:12 weight:UIFontWeightMedium] : [UIFont systemFontOfSize:12 weight:UIFontWeightRegular]]; self.fansNum.text = [@(_userInfo.fansNum) stringValue]; self.followersNum.text = [@(_userInfo.followNum) stringValue]; - + + UIImage *sexBackgroundImage = nil; + if (_userInfo.gender == GenderType_Male) { + sexBackgroundImage = [UIImage gradientColorImageFromColors:@[UIColorRGBAlpha(0x6BB3FF, 0.5),UIColorFromRGB(0x6BB3FF)] + gradientType:GradientTypeTopToBottom + imgSize:CGSizeMake(35, 16)]; + } else { + sexBackgroundImage = [UIImage gradientColorImageFromColors:@[UIColorFromRGB(0xF2A0C3),UIColorFromRGB(0xEB74A6)] + gradientType:GradientTypeTopToBottom + imgSize:CGSizeMake(35, 16)]; + } [self.sexImageView setTitle:[NSString getAgeWithBirth:_userInfo.birth] forState:UIControlStateNormal]; - self.sexImageView.backgroundColor = _userInfo.gender == GenderType_Male ? UIColorFromRGB(0x6BB3FF) :UIColorFromRGB(0xFF80CC); - self.sexImageView.titleEdgeInsets = _userInfo.gender != GenderType_Male ? UIEdgeInsetsMake(0, 2, 0, 0):UIEdgeInsetsMake(0, -1, 0, 0); - self.sexImageView.selected = _userInfo.gender != GenderType_Male; +// self.sexImageView.backgroundColor = _userInfo.gender == GenderType_Male ? UIColorFromRGB(0x6BB3FF) :UIColorFromRGB(0xFF80CC); + [self.sexImageView setBackgroundImage:sexBackgroundImage forState:UIControlStateNormal]; +// self.sexImageView.titleEdgeInsets = _userInfo.gender != GenderType_Male ? UIEdgeInsetsMake(0, 2, 0, 0):UIEdgeInsetsMake(0, -1, 0, 0); +// self.sexImageView.selected = _userInfo.gender != GenderType_Male; self.officialImageView.hidden = userInfo.defUser != UserLevelType_Offical; self.newUserImageView.hidden = !userInfo.newUser; @@ -860,7 +886,7 @@ return view;\ _nickStackView = [[UIStackView alloc] init]; _nickStackView.backgroundColor = [UIColor clearColor]; _nickStackView.axis = UILayoutConstraintAxisHorizontal; - _nickStackView.distribution = UIStackViewDistributionEqualCentering; + _nickStackView.distribution = UIStackViewDistributionFill; _nickStackView.alignment = UIStackViewAlignmentCenter; _nickStackView.spacing = 4; if (isMSRTL()) { @@ -889,7 +915,7 @@ return view;\ [_sexImageView setImage:kImage(@"home_age_girl_icon") forState:UIControlStateSelected]; _sexImageView.titleLabel.font = [UIFont systemFontOfSize:10 weight:UIFontWeightMedium]; [_sexImageView setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal]; - _sexImageView.imageEdgeInsets = UIEdgeInsetsMake(0, 0, 0, 0); + _sexImageView.imageEdgeInsets = UIEdgeInsetsMake(0, 2, 0, 0); _sexImageView.layer.cornerRadius = 14/2; _sexImageView.layer.masksToBounds = YES; } @@ -933,6 +959,15 @@ return view;\ return _idLabel; } +- (UIImageView *)idIconImageView { + if (!_idIconImageView) { + _idIconImageView = [[UIImageView alloc] init]; + _idIconImageView.userInteractionEnabled = YES; + _idIconImageView.image = [UIImage getLanguageImage:@"user_info_id_mark"]; + } + return _idIconImageView; +} + - (UIImageView *)copyIdImageView { if (!_copyIdImageView) { _copyIdImageView = [[UIImageView alloc] init]; @@ -980,18 +1015,19 @@ return view;\ [_onlineButton addTarget:self action:@selector(onlineButtonAction:) forControlEvents:UIControlEventTouchUpInside]; - [_onlineButton setTitle:[NSString stringWithFormat:@" %@ ", YMLocalizedString(@"XPMineSimpleUserInfoHeaderView2")] + [_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 setEnlargeEdgeWithTop:10 right:10 bottom:10 left:10]; - _onlineButton.layer.cornerRadius = 11; + _onlineButton.layer.cornerRadius = 12; _onlineButton.layer.masksToBounds = YES; _onlineButton.hidden = YES; // CGFloat spacing = 4.0; // 图片和标题之间的间距 -// _onlineButton.imageEdgeInsets = UIEdgeInsetsMake(0, spacing / 2, 0, 0); + _onlineButton.imageEdgeInsets = UIEdgeInsetsMake(0, 40, 0, 0); + _onlineButton.titleEdgeInsets = UIEdgeInsetsMake(0, 24, 0, 0); } return _onlineButton; } @@ -1003,7 +1039,7 @@ return view;\ placeholderImage:[UIImageConstant defaultBannerPlaceholder]]; _pi_cycleScrollView.backgroundColor = [UIColor clearColor]; _pi_cycleScrollView.bannerImageViewContentMode = UIViewContentModeScaleAspectFill; - _pi_cycleScrollView.pageControlStyle = SDCycleScrollViewPageContolStyleNone; + _pi_cycleScrollView.pageControlStyle = SDCycleScrollViewPageContolStyleAnimated;//SDCycleScrollViewPageContolStyleNone; _pi_cycleScrollView.autoScroll = NO; // SDCycleScrollView没有适配阿语,在RTL下会乱滚,都用LTR算了 _pi_cycleScrollView.semanticContentAttribute = UISemanticContentAttributeForceLeftToRight; @@ -1043,7 +1079,7 @@ return view;\ _tagStackView.axis = UILayoutConstraintAxisHorizontal; _tagStackView.distribution = UIStackViewDistributionFillProportionally; _tagStackView.alignment = UIStackViewAlignmentCenter; - _tagStackView.spacing = 4; + _tagStackView.spacing = 6; } return _tagStackView; } diff --git a/YuMi/Modules/YMRoom/View/StageView/FifteenMicStageView.m b/YuMi/Modules/YMRoom/View/StageView/FifteenMicStageView.m index 64d523a7..820f56e3 100644 --- a/YuMi/Modules/YMRoom/View/StageView/FifteenMicStageView.m +++ b/YuMi/Modules/YMRoom/View/StageView/FifteenMicStageView.m @@ -8,9 +8,9 @@ #import "FifteenMicStageView.h" #import "ArabMicroView.h" //第一行距离顶部 -#define firstRowTopMargin 35 +#define firstRowTopMargin 60 // 房主头像宽 58 + 光圈 5 -//#define ownerWidth (45 + 5) * kScreenScale +#define ownerWidth (45 + 5) * kScreenScale // 昵称高12,距离头像间距 10 #define ownerHeight (ownerWidth + 10 + 12) // 下面 8 个坑位宽55 + 光圈 5 @@ -65,23 +65,21 @@ } - (CGPoint)animationPointAtStageViewByUid:(NSString *)uid { -// NSInteger index = [self getIndexByUid:uid]; + NSInteger index = [self getIndexByUid:uid]; CGPoint point = CGPointZero; -// if (index == -1 && self.hostDelegate.getRoomInfo.leaveMode && self.hostDelegate.getRoomInfo.uid == uid.integerValue) { -// point = CGPointMake(KScreenWidth / 2, ownerWidth / 2 - 10 + ownerTopMargin); -// } -// -// if (index == 0) { -// point = CGPointMake(KScreenWidth / 2, ownerWidth / 2 - 10 + ownerTopMargin); -// } -// -// if (index >= 1 && index <= 4) { -// point = CGPointMake(paddingH + (mcWidth + marginH) * (index - 1) + mcWidth / 2, firstRowTop + mcWidth / 2- 10); -// } -// -// if (index >= 5 && index <= 9) { -// point = CGPointMake(paddingH + (mcWidth + marginH) * (index - 4 - 1) + mcWidth / 2, secondRowTop + mcWidth / 2 - 10); -// } + + if (index >= 0 && index <= 4) { + point = CGPointMake(paddingH + (mcWidth + marginH) * (index) + mcWidth / 2, firstRowTopMargin + mcHeight / 2); + } + + if (index >= 5 && index < 10) { + point = CGPointMake(paddingH + (mcWidth + marginH) * (index - 5) + mcWidth / 2, sRowTop + mcHeight / 2); + } + + if (index >= 10 && index < 15) { + point = CGPointMake(paddingH + (mcWidth + marginH) * (index - 10) + mcWidth / 2, tRowTop + mcHeight / 2); + } + point = [self convertPoint:point toView:nil]; return point; } diff --git a/YuMi/Modules/YMRoom/View/StageView/StageView.m b/YuMi/Modules/YMRoom/View/StageView/StageView.m index 874151a3..7314fcad 100644 --- a/YuMi/Modules/YMRoom/View/StageView/StageView.m +++ b/YuMi/Modules/YMRoom/View/StageView/StageView.m @@ -697,7 +697,7 @@ NSString * position = [NSString stringWithFormat:@"%d", pkUserInfo.position]; NSString* roomId = [NSString stringWithFormat:@"%ld", self.hostDelegate.getRoomInfo.roomId]; MicroQueueModel *micro = [self.micQueue objectForKey:position]; - if (micro && micro.userInfo && micro.userInfo.uid != pkUserInfo.uid.integerValue) return; + if (micro && micro.userInfo && micro.userInfo.uid != pkUserInfo.uid.integerValue){ return; } UserInfoModel * userInfo = self.hostDelegate.getUserInfo; userInfo.groupType = pkUserInfo.groupType; NIMChatroomQueueUpdateRequest *request = [[NIMChatroomQueueUpdateRequest alloc]init]; @@ -711,10 +711,56 @@ if (error) return; }]; } - } + } else if (attachment.first == CustomMessageType_Room_PK && attachment.second == Custom_Message_Sub_Room_PK_Mode_Close) { + NSDictionary * dic = attachment.data; + ///更新麦序 + NSString * uid = [AccountInfoStorage instance].getUid; + if (dic.allKeys.count > 0 && [[[dic objectForKey:@"operatorUid"] stringValue] isEqualToString:uid]) { + NSInteger micIndex = -1; + MicroQueueModel *micro; + for (MicroQueueModel *model in self.micQueue.allValues) { + if (model.userInfo) { + if (model.userInfo.uid == uid.integerValue) { + micro = model; + micIndex = [[[self __keysForValue:model inDictionary:self.micQueue] xpSafeObjectAtIndex:0] integerValue]; + break; + } + } + } + if (micro == nil) { + return; + } + NSString *position = [NSString stringWithFormat:@"%ld", (long)micIndex]; + NSString *roomId = [NSString stringWithFormat:@"%ld", self.hostDelegate.getRoomInfo.roomId]; + UserInfoModel * userInfo = self.hostDelegate.getUserInfo; + userInfo.groupType = GroupType_default; + NIMChatroomQueueUpdateRequest *request = [[NIMChatroomQueueUpdateRequest alloc]init]; + request.key = position; + NSMutableDictionary *curUserInfo = [[NSMutableDictionary alloc]initWithDictionary:[self userInfoToQueueExt:userInfo]]; + [curUserInfo setValue:@(YES) forKey:@"isNoProhibitMic"]; + request.value = [curUserInfo toJSONString]; + request.roomId = roomId; + request.transient = YES; + [[NIMSDK sharedSDK].chatroomManager updateChatroomQueueObject:request completion:^(NSError * _Nullable error) { + if (error) return; + }]; + } + } } } +- (NSArray *)__keysForValue:(id)value inDictionary:(NSDictionary *)dictionary { + NSMutableArray *keys = [NSMutableArray array]; + + for (id key in dictionary) { + if ([dictionary[key] isEqual:value]) { + [keys addObject:key]; + } + } + + return [keys copy]; +} + #pragma mark - RtcDelegate - 讲话的波纹回调 - (void)usersSpeaking:(NSMutableArray *)uids { if ([RtcManager instance].isRemoteMuted) { diff --git a/YuMi/Modules/YMRoom/View/StageView/TenMicStageView.m b/YuMi/Modules/YMRoom/View/StageView/TenMicStageView.m index 71d9595c..ca43d918 100644 --- a/YuMi/Modules/YMRoom/View/StageView/TenMicStageView.m +++ b/YuMi/Modules/YMRoom/View/StageView/TenMicStageView.m @@ -8,7 +8,7 @@ #import "TenMicStageView.h" #import "ArabMicroView.h" //第一行距离顶部 -#define firstRowTopMargin 35 +#define firstRowTopMargin 60 // 房主头像宽 58 + 光圈 5 //#define ownerWidth (45 + 5) * kScreenScale // 昵称高12,距离头像间距 10 @@ -60,5 +60,20 @@ // return 3 * (lineMargin + mcHeight) + lineMargin; } +- (CGPoint)animationPointAtStageViewByUid:(NSString *)uid { + NSInteger index = [self getIndexByUid:uid]; + CGPoint point = CGPointZero; + + if (index >= 0 && index <= 4) { + point = CGPointMake(paddingH + (mcWidth + marginH) * (index) + mcWidth / 2, firstRowTopMargin + mcWidth / 2); + } + + if (index >= 5 && index < 10) { + point = CGPointMake(paddingH + (mcWidth + marginH) * (index - 5) + mcWidth / 2, sRowTop + mcWidth / 2); + } + point = [self convertPoint:point toView:nil]; + return point; +} + @end diff --git a/YuMi/en.lproj/Localizable.strings b/YuMi/en.lproj/Localizable.strings index ff8307ca..bfd64d90 100644 --- a/YuMi/en.lproj/Localizable.strings +++ b/YuMi/en.lproj/Localizable.strings @@ -3646,9 +3646,9 @@ "MSRoomMenuGameVC0"="Confirm to start the game?"; "MSRoomMenuGameVC1"="You do not have the right to start this game, please contact the room owner or administrator~"; -"XPRoomTypeSelectionViewController0" = "classic"; -"XPRoomTypeSelectionViewController1" = "party"; -"XPRoomTypeSelectionViewController2" = "carnival"; +"XPRoomTypeSelectionViewController0" = "Classic"; +"XPRoomTypeSelectionViewController1" = "Party"; +"XPRoomTypeSelectionViewController2" = "Carnival"; "XPRoomTypeSelectionViewController3" = "After the setting is completed, members who are out of the microphone order will be removed. Do you confirm the setting?"; "XPRoomTypeSelectionViewController4" = "Room type"; "XPRoomTypeSelectionViewController5" = "Using";