7-2作业储存的问题
下面是watchvideo.m 的全部代码,userVideo==3的部分是实现添加movies的功能的,但是添加后还是为空,麻烦帮忙看下是哪里出了问题,谢谢~~~
#import "watchVideo.h"
@implementation watchVideo
-(void)watchvideo:(gobackBlock)block{
NSLog(@"**********观看ios学习视频界面**********");
NSLog(@"请输入要选择的功能");
NSLog(@"1 查询所有iOS视频");
NSLog(@"2 通过ID选择播放某一iOS视频");
NSLog(@"3 添加一个新的iOS视频");
NSLog(@"4 删除某一iOS视频");
char video[1000];
scanf("%s",video);
NSString * uservideo = [NSString stringWithUTF8String:video];
int userVideo = uservideo.intValue;
watchVideo *ww1=[[watchVideo alloc]init];
NSLog(@"当前的movies%@",ww1.movies);
NSArray *movieskeys = [ww1.movies allKeys];
if (userVideo==1){
if (movieskeys.count==0){
NSLog(@"视频为空");
NSLog(@"观看ios学习视频中...");
block();
}
else{ // 如果movies有信息,需要打印出来
for(int i=0;i<movieskeys.count;i++){
NSString * moviename = [ww1.movies valueForKey:[movieskeys objectAtIndex:i]];
NSString * movieid =[movieskeys objectAtIndex:i];
NSLog(@"视频ID:%@ 视频名称:%@",movieid,moviename);
}
}
}
if (userVideo==2){
NSLog(@"请输入需要观看的视频ID");
char videoid[1000];
scanf("%s",videoid);
NSString * inputvideoid = [NSString stringWithUTF8String:videoid];
if([movieskeys containsObject:inputvideoid]){ //检查输入的id是否在id的数组中
NSString * moviename2 =[ww1.movies valueForKey:inputvideoid];
NSLog(@"视频ID:%@ 视频名称:%@",inputvideoid,moviename2 );
NSLog(@"观看ios学习视频中...");
block();
}
else{ //输入id不存在
NSLog(@"您查找的视频不存在");
NSLog(@"观看ios学习视频中...");
block();
}
}
if (userVideo==3){// 实现字典添加的功能
NSLog(@"请输入要添加的视频名称");
char advideoname[1000];
scanf("%s",advideoname);
NSString * addvideoname= [NSString stringWithUTF8String:advideoname];
NSLog(@"请输入要添加的视频ID ID不能重复");
char advideoid[1000];
scanf("%s",advideoid);
NSString * addvideoid= [NSString stringWithUTF8String:advideoid];
[ww1.movies setValue:addvideoname forKey:addvideoid];
NSLog(@"添加后的movies%@",ww1.movies);
NSLog(@"观看ios学习视频中...");
block();
}
if (userVideo==4){
NSLog(@"请输入要删除的视频名称");
char removevideo[1000];
scanf("%s",removevideo);
NSString * removevideoid= [NSString stringWithUTF8String:removevideo];
[ww1.movies removeObjectForKey:removevideoid];
NSLog(@"删除成功");
NSLog(@"观看ios学习视频中...");
block();
}
}
@end
正在回答 回答被采纳积分+1
我按照这个方法修改了,全都改成self.movies 在储存之后的nslog 也还是null。 下面是watchvideo.h 和修改后的.m , 麻烦再帮忙看下
watchvideo.h:
#import <Foundation/Foundation.h>
typedef void (^gobackBlock)();
typedef void (^logBlock) (NSString*userName,NSString * userCode);
@interface watchVideo : NSObject
@property(nonatomic,strong)NSMutableDictionary *movies;
-(void)watchvideo:(gobackBlock)block;
@end
修改后的watchvideo.m:
#import "watchVideo.h"
@implementation watchVideo
-(void)watchvideo:(gobackBlock)block{
NSLog(@"**********观看ios学习视频界面**********");
NSLog(@"请输入要选择的功能");
NSLog(@"1 查询所有iOS视频");
NSLog(@"2 通过ID选择播放某一iOS视频");
NSLog(@"3 添加一个新的iOS视频");
NSLog(@"4 删除某一iOS视频");
char video[1000];
scanf("%s",video);
NSString * uservideo = [NSString stringWithUTF8String:video];
int userVideo = uservideo.intValue;
NSLog(@"当前的movies%@",self.movies);
NSArray *movieskeys = [self.movies allKeys];
if (userVideo==1){
if (movieskeys.count==0){
NSLog(@"视频为空");
NSLog(@"观看ios学习视频中...");
block();
}
else{ // 如果movies有信息,需要打印出来
for(int i=0;i<movieskeys.count;i++){
NSString * moviename = [self.movies valueForKey:[movieskeys objectAtIndex:i]];
NSString * movieid =[movieskeys objectAtIndex:i];
NSLog(@"视频ID:%@ 视频名称:%@",movieid,moviename);
}
}
}
if (userVideo==2){
NSLog(@"请输入需要观看的视频ID");
char videoid[1000];
scanf("%s",videoid);
NSString * inputvideoid = [NSString stringWithUTF8String:videoid];
if([movieskeys containsObject:inputvideoid]){ //检查输入的id是否在id的数组中
NSString * moviename2 =[self.movies valueForKey:inputvideoid];
NSLog(@"视频ID:%@ 视频名称:%@",inputvideoid,moviename2 );
NSLog(@"观看ios学习视频中...");
block();
}
else{ //输入id不存在
NSLog(@"您查找的视频不存在");
NSLog(@"观看ios学习视频中...");
block();
}
}
if (userVideo==3){// 实现字典添加的功能
NSLog(@"请输入要添加的视频名称");
char advideoname[1000];
scanf("%s",advideoname);
NSString * addvideoname= [NSString stringWithUTF8String:advideoname];
NSLog(@"请输入要添加的视频ID ID不能重复");
char advideoid[1000];
scanf("%s",advideoid);
NSString * addvideoid= [NSString stringWithUTF8String:advideoid];
[self.movies setValue:addvideoname forKey:addvideoid];
NSLog(@"添加后的movies%@",self.movies);
NSLog(@"观看ios学习视频中...");
block();
}
if (userVideo==4){
NSLog(@"请输入要删除的视频名称");
char removevideo[1000];
scanf("%s",removevideo);
NSString * removevideoid= [NSString stringWithUTF8String:removevideo];
[self.movies removeObjectForKey:removevideoid];
NSLog(@"删除成功");
NSLog(@"观看ios学习视频中...");
block();
}
}
@end
- 参与学习 1337 人
- 提交作业 712 份
- 解答问题 1878 个
很多人都在疑问没有基础该怎么学习iOS开发?不用担心,本路径采用游戏关卡式的教学模式,并且以经典OC与最新Swift双重结合的教学内容,帮助大家快速掌握两种iOS开发语言基础,去掉“零”标签。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星