From f99cf1d5cc50407394501853be06cb39f38a092c Mon Sep 17 00:00:00 2001
From: 单军华 <WindShan@danjunhuas-MacBook-Pro.local>
Date: Wed, 28 Mar 2018 14:09:19 +0800
Subject: [PATCH] 界面更换与适配调整
---
pregnancy_guard/BaseProject/Controller/Mine/MusicSetPage.m | 165 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 164 insertions(+), 1 deletions(-)
diff --git a/pregnancy_guard/BaseProject/Controller/Mine/MusicSetPage.m b/pregnancy_guard/BaseProject/Controller/Mine/MusicSetPage.m
index a8273f7..fb7f546 100644
--- a/pregnancy_guard/BaseProject/Controller/Mine/MusicSetPage.m
+++ b/pregnancy_guard/BaseProject/Controller/Mine/MusicSetPage.m
@@ -9,9 +9,18 @@
#import "MusicSetPage.h"
#import "MusicPlayCell.h"
#import "HotelAccount.h"
+#import "CSAudioManager.h"
+#import "NetworkSingleton.h"
+
+#define kPlayID @"ID001"
+#define kPlayID2 @"ID002"
@interface MusicSetPage ()<UITableViewDelegate,UITableViewDataSource,musicPlayDelegate>
-
+{
+
+}
+@property (nonatomic,strong) NSData *mp3Data;
+@property (nonatomic,strong) CSAudioManager *csManager;
@property(nonatomic,strong) UITableView * tableView;
@property (nonatomic, strong) NSMutableArray *modelArray;
@end
@@ -44,6 +53,48 @@
{
[super viewDidLoad];
// Do any additional setup after loading the view.
+ self.navigationItem.title = @"������������";
+ [self setNavigationLeft:@"������" sel:@selector(backAction)];
+
+ self.csManager = [CSAudioManager defaultManager];
+ self.mp3Data = nil;
+
+ MPWeakSelf(self);
+ [self.csManager setBlockPlayerStartPlay:^{
+ NSLog(@"���������-������������������");
+ [weakself.tableView reloadData];
+ }];
+
+ [self.csManager setBlockPlayerStopPlay:^{
+ NSLog(@"���������-������������������");
+ [weakself.tableView reloadData];
+ }];
+
+ [self.csManager setBlockPlayerDidFinishPlaying:^{
+ NSLog(@"���������-���������������������");
+ //[weakself.tableView reloadData];
+ }];
+
+
+ //������������������������������������������CSAudioManager.h ���������
+ //[self.csManager playSoundWithSoundName:@"sms-received1" PlayID:kPlayID2];
+
+
+ self.modelArray = [[NSMutableArray alloc] init];
+ for( int i =0; i<10;i++)
+ {
+ HotelAccount * model = [[HotelAccount alloc] init];
+ [self.modelArray addObject:model];
+ }
+
+ self.tableView.hidden = NO;
+ [self.tableView reloadData];
+}
+
+-(void)backAction
+{
+ [self dismissViewControllerAnimated:YES completion:nil];
+ //[self.navigationController popViewControllerAnimated:YES];
}
- (void)didReceiveMemoryWarning
@@ -76,7 +127,20 @@
cell = [[MusicPlayCell alloc] initWithStyle:UITableViewCellStyleValue1 reuseIdentifier:CellIdentifier];
}
+ cell.delegate = self;
+
HotelAccount * model = [self.modelArray objectAtIndex:indexPath.row];
+
+ NSInteger selIndex = [[UserDefault stringForKey:@"video"] integerValue];
+ if( selIndex == indexPath.row )
+ {
+ model.setStatus = 1;
+ }
+
+ model.indexRow = indexPath.row;
+ model.musicName = @"music.mp3";
+ model._id = [NSString stringWithFormat:@"judqiowu%ld",indexPath.row];
+ model.xuhaoIndex = [NSString stringWithFormat:@"%02ld",indexPath.row+1];
[cell setItemView:model];
return cell;
@@ -101,9 +165,108 @@
- (void)musicPlaySection:(HotelAccount*)model
{
+ if ( model.cmd == 1 )
+ {
+ if( model.playStatus == 1 )
+ {
+ // ���������������������������
+ if( self.mp3Data != nil )
+ {
+ //������������
+ [self.csManager stopMusicWithPlayID:kPlayID];
+ [self.csManager disposeSoundWithPlayID:kPlayID];
+ }
+
+ // ���������������������������
+ for( NSUInteger i = 0; i < self.modelArray.count;i++)
+ {
+ HotelAccount * tempModel = [self.modelArray objectAtIndex:i];
+ if( [tempModel._id isEqualToString:model._id] )
+ continue;
+
+ tempModel.playStatus = 0;
+ }
+
+ NSString *mp3Path = [[NSBundle mainBundle] pathForResource:model.musicName ofType:nil];
+ NSLog(@"mp3Path : %@",mp3Path);
+ self.mp3Data = [NSData dataWithContentsOfURL:[NSURL fileURLWithPath:mp3Path]];
+ //������������
+ [self.csManager playingMusicWithData:self.mp3Data playID:kPlayID];
+ }
+ else if( model.playStatus == 2 )
+ {
+ //������������
+ [self.csManager stopMusicWithPlayID:kPlayID];
+ }
+ }
+ else if( model.cmd == 2 )
+ {
+ if( model.setStatus == 1 )
+ {
+ //������������
+ // ���������������������
+ for( NSUInteger i = 0; i < self.modelArray.count;i++)
+ {
+ HotelAccount * tempModel = [self.modelArray objectAtIndex:i];
+ if( [tempModel._id isEqualToString:model._id] )
+ continue;
+
+ tempModel.setStatus = 0;
+ }
+
+ // ������������������
+ [self update_video:model];
+
+ }
+ else if( model.setStatus == 2 )
+ {
+ //������������
+ [self update_video:model];
+ }
+ }
}
+
+-(void)update_video:(HotelAccount *)model
+{
+ //[UserDefault stringForKey:@"user_id"]
+ NSString *path = [[NSString alloc] initWithFormat:UPDATE_USERINFO];
+
+ NSMutableDictionary *param = [[NSMutableDictionary alloc] init];
+
+ //['refresh_frequency', 'video', 'is_open_upload']
+ [param setValue:[UserDefault stringForKey:@"user_id"] forKey:@"user_id"];
+ [param setValue:@"video" forKey:@"field"]; // 1 ������ 0 ������
+ [param setValue:[NSString stringWithFormat:@"%ld",model.indexRow] forKey:@"value"];
+
+ MPWeakSelf(self);
+ [NetworkSingleton networkingGetMethod:param urlName:path success:^(id responseBody)
+ {
+ MPStrongSelf(self);
+ BaseResModel * resModel = [Global toBaseModel:responseBody];
+
+ if(resModel.code == 0)
+ {
+ [UserDefault setObject:[NSString stringWithFormat:@"%ld",model.indexRow] forKey:@"video"];
+ [UserDefault synchronize];
+
+ [self.tableView reloadData];
+ [Global alertMessageEx:resModel.desc title:@"������������" okTtitle:nil cancelTitle:@"OK" delegate:self];
+ }
+ else
+ {
+ [Global alertMessageEx:resModel.desc title:@"������������" okTtitle:nil cancelTitle:@"OK" delegate:self];
+ }
+ }
+ failure:^(NSString *error)
+ {
+
+ [Global alertMessageEx:error title:@"������������" okTtitle:nil cancelTitle:@"OK" delegate:self];
+ }];
+}
+
+
/*
#pragma mark - Navigation
--
Gitblit v1.8.0