版本优化
This commit is contained in:
@@ -161,6 +161,7 @@
|
||||
2304974D2A739ECD006D1F0C /* XPMineGuildPersonalBillRecordModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 2304974C2A739ECD006D1F0C /* XPMineGuildPersonalBillRecordModel.m */; };
|
||||
232153DD2AF381E400B2FBC0 /* MovEncodeToMpegTool.m in Sources */ = {isa = PBXBuildFile; fileRef = 232153DC2AF381E400B2FBC0 /* MovEncodeToMpegTool.m */; };
|
||||
232153E02AF394BF00B2FBC0 /* XPPrivilegeCardVideoItemModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 232153DF2AF394BF00B2FBC0 /* XPPrivilegeCardVideoItemModel.m */; };
|
||||
236FF06C2AF8892400BEB6EC /* XPClientH5UresModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 236FF06B2AF8892400BEB6EC /* XPClientH5UresModel.m */; };
|
||||
237B89DC2A931479005DB380 /* XPMineUserGameVC.m in Sources */ = {isa = PBXBuildFile; fileRef = 237B89DB2A931479005DB380 /* XPMineUserGameVC.m */; };
|
||||
237B89DF2A933F52005DB380 /* XPMineUserGameCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 237B89DE2A933F52005DB380 /* XPMineUserGameCell.m */; };
|
||||
237B89E22A935701005DB380 /* XPMinePlaceOrderView.m in Sources */ = {isa = PBXBuildFile; fileRef = 237B89E12A935701005DB380 /* XPMinePlaceOrderView.m */; };
|
||||
@@ -1665,6 +1666,8 @@
|
||||
232153DC2AF381E400B2FBC0 /* MovEncodeToMpegTool.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MovEncodeToMpegTool.m; sourceTree = "<group>"; };
|
||||
232153DE2AF394BF00B2FBC0 /* XPPrivilegeCardVideoItemModel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPPrivilegeCardVideoItemModel.h; sourceTree = "<group>"; };
|
||||
232153DF2AF394BF00B2FBC0 /* XPPrivilegeCardVideoItemModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPPrivilegeCardVideoItemModel.m; sourceTree = "<group>"; };
|
||||
236FF06A2AF8892400BEB6EC /* XPClientH5UresModel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPClientH5UresModel.h; sourceTree = "<group>"; };
|
||||
236FF06B2AF8892400BEB6EC /* XPClientH5UresModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPClientH5UresModel.m; sourceTree = "<group>"; };
|
||||
237B89DA2A931479005DB380 /* XPMineUserGameVC.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMineUserGameVC.h; sourceTree = "<group>"; };
|
||||
237B89DB2A931479005DB380 /* XPMineUserGameVC.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMineUserGameVC.m; sourceTree = "<group>"; };
|
||||
237B89DD2A933F52005DB380 /* XPMineUserGameCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMineUserGameCell.h; sourceTree = "<group>"; };
|
||||
@@ -4478,6 +4481,8 @@
|
||||
E875FA8627D619820086ED04 /* ClientDataModel.m */,
|
||||
9BA812D028BF145700783EA7 /* ClientRedPacketModel.h */,
|
||||
9BA812D128BF145700783EA7 /* ClientRedPacketModel.m */,
|
||||
236FF06A2AF8892400BEB6EC /* XPClientH5UresModel.h */,
|
||||
236FF06B2AF8892400BEB6EC /* XPClientH5UresModel.m */,
|
||||
);
|
||||
path = Tabbar;
|
||||
sourceTree = "<group>";
|
||||
@@ -10364,6 +10369,7 @@
|
||||
E855514E2805152B005F293F /* XPGuildTimePickView.m in Sources */,
|
||||
9B0086CA27BA4F570032BD2B /* AnchorMicroView.m in Sources */,
|
||||
E83ABF00280EC45700322EE4 /* MessageContentApplicationShareView.m in Sources */,
|
||||
236FF06C2AF8892400BEB6EC /* XPClientH5UresModel.m in Sources */,
|
||||
F1D8556F2931FC86008C418F /* XPRoomYearActivityView.m in Sources */,
|
||||
E8B9843628ABA8B40022D026 /* XPMonentPublishSuccessView.m in Sources */,
|
||||
E81C279626EB39CC0031E639 /* LoginForgetPasswordPresent.m in Sources */,
|
||||
|
@@ -31,7 +31,7 @@
|
||||
</Testables>
|
||||
</TestAction>
|
||||
<LaunchAction
|
||||
buildConfiguration = "Release"
|
||||
buildConfiguration = "Debug"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
launchStyle = "0"
|
||||
|
22
xplan-ios/Assets.xcassets/Mine/about_records_arrow_bg.imageset/Contents.json
vendored
Normal file
22
xplan-ios/Assets.xcassets/Mine/about_records_arrow_bg.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"filename" : "about_records_arrow_bg@2x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"filename" : "about_records_arrow_bg@3x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
}
|
||||
}
|
BIN
xplan-ios/Assets.xcassets/Mine/about_records_arrow_bg.imageset/about_records_arrow_bg@2x.png
vendored
Normal file
BIN
xplan-ios/Assets.xcassets/Mine/about_records_arrow_bg.imageset/about_records_arrow_bg@2x.png
vendored
Normal file
Binary file not shown.
After Width: | Height: | Size: 155 B |
BIN
xplan-ios/Assets.xcassets/Mine/about_records_arrow_bg.imageset/about_records_arrow_bg@3x.png
vendored
Normal file
BIN
xplan-ios/Assets.xcassets/Mine/about_records_arrow_bg.imageset/about_records_arrow_bg@3x.png
vendored
Normal file
Binary file not shown.
After Width: | Height: | Size: 275 B |
@@ -43,4 +43,5 @@ if (@available(iOS 11.0, *)) {\
|
||||
#import "UIImage+ImageEffects.h"
|
||||
#import "NSArray+Safe.h"
|
||||
#import "NSString+Utils.h"
|
||||
|
||||
#endif /* Base_pch */
|
||||
|
@@ -53,7 +53,7 @@ NSString * const KeyWithType(KeyType type) {
|
||||
@(KeyType_NetEase) : @"5e76ec47632d86c30ce18eabfa332b6a",
|
||||
@(KeyType_APNSCer) : @"yinyouApnsRelease",
|
||||
@(keyType_YiDunBussinessId) : @"601545055434f31dc44a7a33b33a8cdf",
|
||||
@(keyType_UMengAppKey) : @"64127f04d64e6861394bc8e1",
|
||||
@(keyType_UMengAppKey) : @"65377a39b2f6fa00ba6ad8c3",
|
||||
@(keyType_UMengAppChannel) : @"App Store",
|
||||
@(KeyType_FacePwdEncode) : @"1ea53d260ecf11e7b56e00163e046a26",
|
||||
@(KeyType_SudGameAppID) : @"1467745235064848385",
|
||||
|
@@ -296,8 +296,18 @@
|
||||
}
|
||||
|
||||
- (void)xPNewHomeNavView:(XPNewHomeNavView *)view didClickRank:(UIButton *)sender {
|
||||
NSString *url = @"";
|
||||
if([ClientConfig shareConfig].configInfo.h5Uris.count > 0){
|
||||
for (XPClientH5UresModel *h5Model in [ClientConfig shareConfig].configInfo.h5Uris) {
|
||||
if([h5Model.code isEqualToString:@"rank"]){
|
||||
url = h5Model.uri;
|
||||
break;;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
XPWebViewController * webVC =[[XPWebViewController alloc] init];
|
||||
webVC.url = URLWithType(kHomeRankURL);
|
||||
webVC.url = url.length > 0 ? url : URLWithType(kHomeRankURL);
|
||||
[self.navigationController pushViewController:webVC animated:YES];
|
||||
}
|
||||
|
||||
|
@@ -338,6 +338,7 @@
|
||||
_textField.textColor = [ThemeColor mainTextColor];
|
||||
_textField.font = [UIFont systemFontOfSize:18.f];
|
||||
_textField.borderStyle = UITextBorderStyleNone;
|
||||
_textField.secureTextEntry = NO;
|
||||
_textField.keyboardType = UIKeyboardTypeNumberPad;
|
||||
_textField.tintColor = [ThemeColor mainTextColor];
|
||||
_textField.backgroundColor = [UIColor clearColor];
|
||||
|
@@ -12,11 +12,15 @@
|
||||
#import "ThemeColor.h"
|
||||
#import "YYUtility.h"
|
||||
#import "XPMacro.h"
|
||||
#import "XPWebViewController.h"
|
||||
|
||||
@interface XPMineAboutUsViewController ()
|
||||
@property (nonatomic, strong) UIImageView *iconImageView;//图标
|
||||
@property (strong, nonatomic) UILabel *versionLabel;//版本
|
||||
@property (strong , nonatomic) UILabel *nameLabel;
|
||||
@property(nonatomic,strong) UILabel *recordsNumView;
|
||||
@property(nonatomic,strong) UILabel *companyView;
|
||||
@property(nonatomic,strong) UIButton *skipBtn;
|
||||
@end
|
||||
|
||||
@implementation XPMineAboutUsViewController
|
||||
@@ -32,6 +36,9 @@
|
||||
[self.view addSubview:self.versionLabel];
|
||||
[self.view addSubview:self.iconImageView];
|
||||
[self.view addSubview:self.nameLabel];
|
||||
[self.view addSubview:self.companyView];
|
||||
[self.view addSubview:self.recordsNumView];
|
||||
[self.view addSubview:self.skipBtn];
|
||||
}
|
||||
|
||||
- (void)makeConstriants {
|
||||
@@ -47,8 +54,26 @@
|
||||
make.top.mas_equalTo(self.nameLabel.mas_bottom).offset(5);
|
||||
make.centerX.mas_equalTo(self.view);
|
||||
}];
|
||||
[self.companyView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.bottom.mas_equalTo(-kGetScaleWidth(50));
|
||||
make.centerX.equalTo(self.view);
|
||||
}];
|
||||
[self.recordsNumView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.bottom.mas_equalTo(-kGetScaleWidth(70));
|
||||
make.centerX.equalTo(self.view);
|
||||
}];
|
||||
[self.skipBtn mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.width.height.mas_equalTo(kGetScaleWidth(12));
|
||||
make.centerY.equalTo(self.recordsNumView);
|
||||
make.leading.equalTo(self.recordsNumView.mas_trailing).mas_offset(kGetScaleWidth(2));
|
||||
}];
|
||||
}
|
||||
-(void)skipRecordsAction{
|
||||
XPWebViewController * webVC = [[XPWebViewController alloc] init];
|
||||
webVC.url = @"https://beian.miit.gov.cn";
|
||||
|
||||
[self.navigationController pushViewController:webVC animated:YES];
|
||||
}
|
||||
|
||||
#pragma mark - Getter && Setter
|
||||
|
||||
@@ -82,6 +107,27 @@
|
||||
}
|
||||
return _nameLabel;
|
||||
}
|
||||
|
||||
|
||||
- (UILabel *)recordsNumView{
|
||||
if(!_recordsNumView){
|
||||
_recordsNumView = [UILabel labelInitWithText:@"桂ICP备2022001089号-2A" font:kFontMedium(12) textColor:UIColorFromRGB(0xA2A7B8)];
|
||||
_recordsNumView.textAlignment = NSTextAlignmentCenter;
|
||||
}
|
||||
return _recordsNumView;
|
||||
}
|
||||
- (UILabel *)companyView{
|
||||
if(!_companyView){
|
||||
_companyView = [UILabel labelInitWithText:@"南宁冰创网络科技有限公司 版权所有" font:kFontMedium(12) textColor:UIColorFromRGB(0xA2A7B8)];
|
||||
_companyView.textAlignment = NSTextAlignmentCenter;
|
||||
}
|
||||
return _companyView;
|
||||
}
|
||||
- (UIButton *)skipBtn{
|
||||
if(!_skipBtn){
|
||||
_skipBtn = [UIButton new];
|
||||
[_skipBtn setEnlargeEdgeWithTop:10 right:10 bottom:10 left:10];
|
||||
[_skipBtn addTarget:self action:@selector(skipRecordsAction) forControlEvents:UIControlEventTouchUpInside];
|
||||
[_skipBtn setBackgroundImage:kImage(@"about_records_arrow_bg") forState:UIControlStateNormal];
|
||||
}
|
||||
return _skipBtn;
|
||||
}
|
||||
@end
|
||||
|
@@ -15,6 +15,7 @@
|
||||
@property(nonatomic,strong) UILabel *titleVeiw;
|
||||
///蒙层
|
||||
@property(nonatomic,strong) UIImageView *curMaskView;
|
||||
@property(nonatomic,strong) UIImageView *specialImageView;
|
||||
@end
|
||||
|
||||
@implementation XPPrivilegeCardGiftCell
|
||||
@@ -31,6 +32,7 @@
|
||||
[self.bgGifView addSubview:self.timeView];
|
||||
[self.bgGifView addSubview:self.curMaskView];
|
||||
[self.contentView addSubview:self.titleVeiw];
|
||||
[self.contentView addSubview:self.specialImageView];
|
||||
}
|
||||
-(void)installConstraints{
|
||||
[self.bgGifView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
@@ -51,6 +53,12 @@
|
||||
make.leading.trailing.equalTo(self.contentView).inset(kGetScaleWidth(5));
|
||||
make.height.mas_equalTo(kGetScaleWidth(14));
|
||||
}];
|
||||
[self.specialImageView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.width.height.mas_equalTo(kGetScaleWidth(14));
|
||||
make.top.mas_equalTo(kGetScaleWidth(6));
|
||||
make.trailing.mas_equalTo(-kGetScaleWidth(8));
|
||||
|
||||
}];
|
||||
}
|
||||
- (void)setCardModel:(XPPrivilegeCardItemModel *)cardModel{
|
||||
_cardModel = cardModel;
|
||||
@@ -58,6 +66,8 @@
|
||||
_timeView.text = [NSString stringWithFormat:@"有效期至:%@",_cardModel.expireTime];
|
||||
[_bgGifView sd_setImageWithURL:[NSURL URLWithString: _cardModel.cardUrl]];
|
||||
_bgGifView.layer.borderWidth = _cardModel.isSelected ? 2 : 0;
|
||||
_specialImageView.hidden = _cardModel.cardType == 0;
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -96,4 +106,11 @@
|
||||
}
|
||||
return _curMaskView;
|
||||
}
|
||||
- (UIImageView *)specialImageView {
|
||||
if (!_specialImageView) {
|
||||
_specialImageView = [UIImageView new];
|
||||
_specialImageView.image = kImage(@"gift_tag_effect");
|
||||
}
|
||||
return _specialImageView;
|
||||
}
|
||||
@end
|
||||
|
@@ -25,7 +25,7 @@
|
||||
}
|
||||
-(void)setExperLevelPic:(NSString *)experLevelPic{
|
||||
_experLevelPic = experLevelPic;
|
||||
_charmNewLevelPic = [NSString getWealthImageUrl:_experLevelPic];
|
||||
_experNewLevelPic = [NSString getWealthImageUrl:_experLevelPic];
|
||||
}
|
||||
@end
|
||||
|
||||
|
@@ -32,7 +32,7 @@
|
||||
@property(nonatomic,strong) UIButton *newBtn;
|
||||
///图片的上传链接
|
||||
@property (nonatomic,strong) NSArray *uploadImageList;
|
||||
@property(nonatomic,assign) BOOL isGif;
|
||||
|
||||
///新建
|
||||
@property(nonatomic,strong) XPPrivilegeCardProduceView *produceView;
|
||||
///视频
|
||||
@@ -143,7 +143,7 @@
|
||||
[self showErrorToast:@"上传图片失败,请重新上传"];
|
||||
return;
|
||||
}
|
||||
[self.presenter savePrivilegeCardWittCardName:cardName dailyNum:dailyNum description:description effectDay:effectTime erbanNoStr:erbanNoStr cardUrl:list.firstObject roomUid:self.roomUid cardType:self.isGif == YES ? @"1":@"0" duration:@"0" effectUrl:@""];
|
||||
[self.presenter savePrivilegeCardWittCardName:cardName dailyNum:dailyNum description:description effectDay:effectTime erbanNoStr:erbanNoStr cardUrl:list.firstObject roomUid:self.roomUid cardType:self.produceView.cardType == 1 ? @"1":@"0" duration:@"0" effectUrl:@""];
|
||||
|
||||
}];
|
||||
};
|
||||
@@ -178,20 +178,20 @@
|
||||
}
|
||||
self.uploadImageList = photos;
|
||||
self.videoModel = nil;
|
||||
self.isGif = NO;
|
||||
|
||||
}
|
||||
- (void)imagePickerController:(TZImagePickerController *)picker didFinishPickingVideo:(UIImage *)coverImage sourceAssets:(PHAsset *)asset{
|
||||
[self showLoading];
|
||||
[MovEncodeToMpegTool convertMovToMp4FromPHAsset:asset andAVAssetExportPresetQuality:ExportPreset1280x720 andMovEncodeToMpegToolResultBlock:^(NSURL * _Nullable mp4FileUrl, NSData * _Nullable mp4Data, NSError * _Nullable error) {
|
||||
[MovEncodeToMpegTool convertMovToMp4FromPHAsset:asset andAVAssetExportPresetQuality:ExportPresetMediumQuality andMovEncodeToMpegToolResultBlock:^(NSURL * _Nullable mp4FileUrl, NSData * _Nullable mp4Data, NSError * _Nullable error) {
|
||||
[self hideHUD];
|
||||
if(error != nil){
|
||||
[self hideHUD];
|
||||
[self showErrorToast:@"获取视频失败,请重新选择!"];
|
||||
[XCHUDTool showErrorWithMessage:@"获取视频失败,请重新选择!"];
|
||||
return;
|
||||
}
|
||||
CGFloat mbSize = mp4Data.length / (1024.0*1024.0);
|
||||
if(mbSize > 5){
|
||||
[self showErrorToast:@"上传文件最大不能超过5M"];
|
||||
[XCHUDTool showErrorWithMessage:@"上传文件最大不能超过5M"];
|
||||
return;
|
||||
}
|
||||
self.videoModel.videoData = mp4Data;
|
||||
@@ -203,22 +203,6 @@
|
||||
});
|
||||
|
||||
}];
|
||||
// PHVideoRequestOptions *options = [[PHVideoRequestOptions alloc] init];
|
||||
// options.version = PHVideoRequestOptionsVersionOriginal;
|
||||
// [[PHImageManager defaultManager] requestAVAssetForVideo:asset options:options resultHandler:^(AVAsset *avAsset, AVAudioMix *audioMix, NSDictionary *info) {
|
||||
// if ([avAsset isKindOfClass:[AVURLAsset class]]) {
|
||||
// AVURLAsset* urlAsset = (AVURLAsset*)avAsset;
|
||||
// NSNumber *size;
|
||||
//
|
||||
// [urlAsset.URL getResourceValue:&size forKey:NSURLFileSizeKey error:nil];
|
||||
// CGFloat mbSize = [size floatValue]/(1024.0*1024.0);
|
||||
// if(mbSize > 5){
|
||||
// [self showErrorToast:@"上传文件最大不能超过5M"];
|
||||
// return;
|
||||
// }
|
||||
//
|
||||
//
|
||||
// }}];
|
||||
}
|
||||
|
||||
- (UIImage*) thumbnailImageForVideo:(NSURL *)videoURL atTime:(NSTimeInterval)time {
|
||||
@@ -260,7 +244,6 @@
|
||||
self.produceView.cardType = 1;
|
||||
self.produceView.chooseImage = animatedImage;
|
||||
self.uploadImageList = @[dataGif];
|
||||
self.isGif = YES;
|
||||
self.videoModel = nil;
|
||||
}
|
||||
|
||||
@@ -269,7 +252,6 @@
|
||||
self.produceView.cardType = 1;
|
||||
self.produceView.chooseImage = animatedImage;
|
||||
self.uploadImageList = @[dataGif];
|
||||
self.isGif = YES;
|
||||
self.videoModel = nil;
|
||||
|
||||
}
|
||||
@@ -297,7 +279,7 @@
|
||||
- (void)uploadAlbumPicList:(NSArray *)array finish:(void(^)(NSArray *list))finish {
|
||||
|
||||
id obj = array.firstObject;
|
||||
if(self.isGif == YES){
|
||||
if(self.produceView.cardType == 1){
|
||||
[Api qiniuUpLoadImage:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) {
|
||||
if (code == 200) {
|
||||
NSString *key = data.data[@"key"];
|
||||
@@ -449,10 +431,6 @@
|
||||
-(void)againEditPrivilegeCardWithCell:(XPPrivilegeCardItemVC *_Nullable)VC cardModel:(XPPrivilegeCardItemModel *_Nullable)cardModel{
|
||||
self.produceView.cardModel = cardModel;
|
||||
self.uploadImageList = @[];
|
||||
[[NetImageView new]loadImageWithUrl:cardModel.cardUrl completion:^(UIImage * _Nonnull image, NSURL * _Nonnull url) {
|
||||
NSData *data = UIImageJPEGRepresentation(image, 0.5);
|
||||
self.isGif = [UIImage isGifWithImageData:data];
|
||||
}];
|
||||
[kWindow addSubview:self.produceView];
|
||||
}
|
||||
#pragma mark - Getters And Setters
|
||||
|
@@ -328,7 +328,7 @@
|
||||
self.isPlayVideo = YES;
|
||||
dispatch_time_t timer = dispatch_time(DISPATCH_TIME_NOW, 0.5 * NSEC_PER_SEC);
|
||||
dispatch_after(timer, dispatch_get_main_queue(), ^{
|
||||
[self beginVideoAnimation:effectUrl startPoint:CGPointMake(KScreenWidth/2, KScreenHeight/2) endPoint:CGPointMake(KScreenWidth/2, KScreenHeight) duration:duration/1000];
|
||||
[self beginVideoAnimation:effectUrl startPoint:CGPointMake(KScreenWidth/2, KScreenHeight) endPoint:CGPointMake(KScreenWidth/2, KScreenHeight) duration:duration/1000];
|
||||
|
||||
});
|
||||
}
|
||||
@@ -337,7 +337,7 @@
|
||||
|
||||
dispatch_time_t timer = dispatch_time(DISPATCH_TIME_NOW, 0.5 * NSEC_PER_SEC);
|
||||
dispatch_after(timer, dispatch_get_main_queue(), ^{
|
||||
[self beginGifAnimation:cardUrl startPoint:CGPointMake(KScreenWidth/2, KScreenHeight/2) endPoint:CGPointMake(KScreenWidth/2, KScreenHeight)];
|
||||
[self beginGifAnimation:cardUrl startPoint:CGPointMake(KScreenWidth/2, KScreenHeight) endPoint:CGPointMake(KScreenWidth/2, KScreenHeight)];
|
||||
});
|
||||
}
|
||||
}
|
||||
@@ -1101,7 +1101,7 @@
|
||||
CAAnimationGroup *group = [self createGifOrVideoAnimationStartPoint:startPoint endPoint:endPoint duration:curDuration+0.25];
|
||||
[videoView.layer addAnimation:group forKey:@"giftDisplayViewAnimation"];
|
||||
|
||||
[self performSelector:@selector(aniationVideoViewDidFinish:) withObject:videoView afterDelay:(curDuration)];
|
||||
[self performSelector:@selector(aniationVideoViewDidFinish:) withObject:videoView afterDelay:(curDuration+2.85)];
|
||||
|
||||
|
||||
|
||||
@@ -1159,14 +1159,14 @@
|
||||
if([UIImage isGifWithImageData:data] == NO){
|
||||
CAAnimationGroup *group = [self createGifOrVideoAnimationStartPoint:startPoint endPoint:endPoint duration:5+0.25];
|
||||
[giftImageView.layer addAnimation:group forKey:@"giftDisplayViewAnimation"];
|
||||
[self performSelector:@selector(aniationDidFinish:) withObject:giftImageView afterDelay:(5)];
|
||||
[self performSelector:@selector(aniationDidFinish:) withObject:giftImageView afterDelay:(5+2.85)];
|
||||
return;
|
||||
}
|
||||
NSTimeInterval time = [UIImage durationForGifData:data];
|
||||
time = time < 5 ? 5 : time;
|
||||
CAAnimationGroup *group = [self createGifOrVideoAnimationStartPoint:startPoint endPoint:endPoint duration:time + 0.25];
|
||||
[giftImageView.layer addAnimation:group forKey:@"giftDisplayViewAnimation"];
|
||||
[self performSelector:@selector(aniationDidFinish:) withObject:giftImageView afterDelay:(time)];
|
||||
[self performSelector:@selector(aniationDidFinish:) withObject:giftImageView afterDelay:(time+2.85)];
|
||||
|
||||
}];
|
||||
|
||||
@@ -1199,18 +1199,11 @@
|
||||
/// @param endPoint 结束的点
|
||||
- (CAAnimationGroup *)createGifOrVideoAnimationStartPoint:(CGPoint)startPoint endPoint:(CGPoint)endPoint duration:(CGFloat)duration{
|
||||
CGPoint centerPoint = CGPointMake(KScreenWidth / 2, KScreenHeight / 2);
|
||||
CAKeyframeAnimation *animation0 = [CAKeyframeAnimation animation];
|
||||
animation0.duration = 0.8;
|
||||
animation0.keyPath = @"transform.scale";
|
||||
animation0.values = @[@1.0,@1.5,@2.0,@1.5];
|
||||
animation0.repeatCount = 1;
|
||||
animation0.calculationMode = kCAAnimationCubic;
|
||||
animation0.removedOnCompletion = NO;
|
||||
animation0.fillMode = kCAFillModeForwards;
|
||||
|
||||
|
||||
CAKeyframeAnimation *animation1 = [CAKeyframeAnimation animation];
|
||||
animation1.duration = 0.8;
|
||||
animation1.beginTime = 0.8;
|
||||
animation1.beginTime = 0;
|
||||
animation1.keyPath = @"transform.scale";
|
||||
animation1.values = @[@1.5,@2.0,@2.5,@3.0];
|
||||
animation1.repeatCount = 1;
|
||||
@@ -1221,7 +1214,7 @@
|
||||
|
||||
CAKeyframeAnimation *animation2 = [CAKeyframeAnimation animation];
|
||||
animation2.duration = 0.8;
|
||||
animation2.beginTime = 0.8;
|
||||
animation2.beginTime = 0;
|
||||
animation2.keyPath = @"position";
|
||||
animation2.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseOut];;
|
||||
animation2.values = @[[NSValue valueWithCGPoint:startPoint],[NSValue valueWithCGPoint:CGPointMake(centerPoint.x ,centerPoint.y)]];
|
||||
@@ -1231,22 +1224,22 @@
|
||||
|
||||
CAKeyframeAnimation *animation3 = [CAKeyframeAnimation animation];
|
||||
animation3.duration = 0.8;
|
||||
animation3.beginTime = duration - 0.6;//0.8+0.8+1
|
||||
animation3.beginTime = duration + 2;//0.8+0.8+1
|
||||
animation3.keyPath = @"transform.scale";
|
||||
animation3.values = @[@3,@2.5,@2,@1.5,@1];
|
||||
animation3.repeatCount = 1;
|
||||
|
||||
CAKeyframeAnimation *animation4 = [CAKeyframeAnimation animation];
|
||||
animation4.duration = 0.8;
|
||||
animation4.beginTime = duration - 0.6;
|
||||
animation4.beginTime = duration + 2;
|
||||
animation4.keyPath = @"position";
|
||||
animation4.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseOut];
|
||||
animation4.values = @[[NSValue valueWithCGPoint:CGPointMake(centerPoint.x ,centerPoint.y)],[NSValue valueWithCGPoint:endPoint]];
|
||||
animation4.repeatCount = 1;
|
||||
|
||||
CAAnimationGroup *group = [CAAnimationGroup animation];
|
||||
group.duration = duration;
|
||||
group.animations = @[animation0,animation1,animation2, animation3,animation4];
|
||||
group.duration = duration + 2.8;
|
||||
group.animations = @[animation1,animation2, animation3,animation4];
|
||||
group.repeatCount = 1;
|
||||
group.removedOnCompletion = NO;
|
||||
group.fillMode = kCAFillModeForwards;
|
||||
@@ -1330,7 +1323,7 @@
|
||||
self.isPlayVideo = YES;
|
||||
dispatch_time_t timer = dispatch_time(DISPATCH_TIME_NOW, 0.5 * NSEC_PER_SEC);
|
||||
dispatch_after(timer, dispatch_get_main_queue(), ^{
|
||||
[self beginVideoAnimation:effectUrl startPoint:CGPointMake(KScreenWidth/2, KScreenHeight/2) endPoint:CGPointMake(KScreenWidth/2, KScreenHeight) duration:duration/1000];
|
||||
[self beginVideoAnimation:effectUrl startPoint:CGPointMake(KScreenWidth/2, KScreenHeight) endPoint:CGPointMake(KScreenWidth/2, KScreenHeight) duration:duration/1000];
|
||||
|
||||
});
|
||||
}
|
||||
|
@@ -1169,9 +1169,19 @@
|
||||
}
|
||||
|
||||
- (void)contributionButtonAction:(UITapGestureRecognizer *)tap {
|
||||
NSString *url = @"";
|
||||
if([ClientConfig shareConfig].configInfo.h5Uris.count > 0){
|
||||
for (XPClientH5UresModel *h5Model in [ClientConfig shareConfig].configInfo.h5Uris) {
|
||||
if([h5Model.code isEqualToString:@"roomRank"]){
|
||||
url = h5Model.uri;
|
||||
break;;
|
||||
}
|
||||
}
|
||||
}
|
||||
url = url.length > 0 ? url : URLWithType(kRoomRankURL);
|
||||
NSString * roomUid = [NSString stringWithFormat:@"%ld", self.delegate.getRoomInfo.uid];
|
||||
XPRoomHalfWebView * webView = [[XPRoomHalfWebView alloc] init];
|
||||
webView.url = [NSString stringWithFormat:@"%@?roomUid=%@", URLWithType(kRoomRankURL), roomUid];
|
||||
webView.url = [NSString stringWithFormat:@"%@?roomUid=%@", url, roomUid];
|
||||
[TTPopup popupView:webView style:TTPopupStyleActionSheet];
|
||||
if (self.delegate.getRoomInfo.type == RoomType_Anchor) {//点击的时候更新一下
|
||||
[self updateContrionEntranceWithRoomUid:roomUid type:@"month"];
|
||||
|
@@ -8,6 +8,7 @@
|
||||
#import <Foundation/Foundation.h>
|
||||
#import "ClientRedPacketModel.h"
|
||||
#import "AdvertiseModel.h"
|
||||
#import "XPClientH5UresModel.h"
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface ClientDataModel : NSObject
|
||||
@@ -35,7 +36,7 @@ NS_ASSUME_NONNULL_BEGIN
|
||||
@property (nonatomic,strong) NSArray<NSString *> *officialAccountUids;
|
||||
///星座礼物顶部是否开启
|
||||
@property (nonatomic,assign) BOOL twelveStarSwitch;
|
||||
|
||||
@property(nonatomic,copy) NSArray<XPClientH5UresModel *> *h5Uris;
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
||||
|
@@ -15,5 +15,7 @@
|
||||
[XPAdImageTool.shareImageTool saveAdInfo:splashVo];
|
||||
}
|
||||
}
|
||||
|
||||
+ (NSDictionary *)objectClassInArray {
|
||||
return @{@"h5Uris":XPClientH5UresModel.class};
|
||||
}
|
||||
@end
|
||||
|
17
xplan-ios/Main/Tabbar/XPClientH5UresModel.h
Normal file
17
xplan-ios/Main/Tabbar/XPClientH5UresModel.h
Normal file
@@ -0,0 +1,17 @@
|
||||
//
|
||||
// XPClientH5UresModel.h
|
||||
// xplan-ios
|
||||
//
|
||||
// Created by duoban on 2023/11/6.
|
||||
//
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface XPClientH5UresModel : NSObject
|
||||
@property(nonatomic,copy) NSString *code;///房间榜单
|
||||
@property(nonatomic,copy) NSString *uri;///首页榜单
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
12
xplan-ios/Main/Tabbar/XPClientH5UresModel.m
Normal file
12
xplan-ios/Main/Tabbar/XPClientH5UresModel.m
Normal file
@@ -0,0 +1,12 @@
|
||||
//
|
||||
// XPClientH5UresModel.m
|
||||
// xplan-ios
|
||||
//
|
||||
// Created by duoban on 2023/11/6.
|
||||
//
|
||||
|
||||
#import "XPClientH5UresModel.h"
|
||||
|
||||
@implementation XPClientH5UresModel
|
||||
|
||||
@end
|
Reference in New Issue
Block a user