IOS 는 NSUserDefault 를 사용 하여 인터페이스 전송 값 과 데이터 저장 을 실현 합 니 다.
                                            
 4194 단어  IOSNSUserDefault인터페이스 전송 값
                    
시스템 단일 예 NSUserDefault 의 전송 값
첫 번 째 화면 에서
SecondViewController *secondvc = [SecondViewController new];
//       NSUserDefaults     
 NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
//  
[defaults setObject:_firsttextfield.text forKey:@"firstTGP"];
  NSLog(@"%@",defaults);
  [self.navigationController pushViewController:secondvc animated:YES];
//            
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
//    
NSString *str = [defaults objectForKey:@"firstTGP"];
//     
_secondlabel.text = str;
우선 단일 클래스(DataHandle),두 가지 방법 을 만 듭 니 다.
#pragma mark---     :
//             :                  
+(instancetype)sharedDatahandle{
//      (     )
  @synchronized(self) {
    if (!dataHandle) {
      dataHandle = [[DataHandle alloc]init];
    }
  }
  return dataHandle;
}
#pragma mark---     :
+(instancetype)sharedDatahandle{
  static DataHandle *dataHandle = nil;
  static dispatch_once_t onceToken;
  dispatch_once(&onceToken, ^{
    dataHandle = [[DataHandle alloc]init];
  });
  return dataHandle;
}
두 번 째 페이지 중
 self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc]initWithTitle:@"back" style:UIBarButtonItemStylePlain target:self action:@selector(backAC)];
  DataHandle *handle = [DataHandle sharedDatahandle];
  handle.title = @"  ";
- (void)backAC{
  [self.navigationController popViewControllerAnimated:YES];
}
- (void)viewWillAppear:(BOOL)animated{//           
  //  (      ViewDidLoad )
  DataHandle *handle = [DataHandle sharedDatahandle];
  self.firstLabel.text = handle.title;
}
NSUserDefault 사용자 정의 대상 을 사용 할 때 어떤 종류의 데 이 터 를 저장 할 수 있 는 지 알 아야 합 니 다.
1:NSNumber(NSInteger,float,double)
2:NSString,NSArray,NSDictionary,BOOL
  //  NSUserDefault    
  //1:        
  NSArray *array = @[@"11", @"22",@"33"];
  //  NSUserDefault  
  NSUserDefaults *user = [NSUserDefaults standardUserDefaults];
  [user setObject:array forKey:@"userArray"];
  NSLog(@"%@",user);
  //  
  NSArray *newarr = [user objectForKey:@"userArray"];
  NSLog(@"%@",newarr);
#warning   :    Key         ,      Key    
// NSUserDefaults            (       ,        bug),  ,          NSMutableArray   ,             (NSArray)     NSUserDefaults  
NSMutableArray *mutableArray = [NSMutableArray arrayWithObjects:@"123",@"234",@"456", nil];
NSArray *array1 = [NSArray arrayWithArray:mutableArray];
NSUserDefaults *user2 = [NSUserDefaults standardUserDefaults];
[user2 setObject:array1 forKey:@"              "];
//          ,   NSUserDefaults           
/*--------------      --------------*/
//    NSMutableArray *mutablearray = [user objectForKey:@"              "];
//  //    ,mutableArray           ,                   bug
//  NSLog(@"%@",mutablearray);
/*------     --------*/
NSMutableArray *mutablearray = [NSMutableArray arrayWithArray:[user2 objectForKey:@"              "]];
NSLog(@"%@",mutablearray);
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
IOS에서 ReplayKit 및 RTC 사용 방법응용된 소리와 아나운서의 소리를 포함한다.이 두 가지 수요를 감안하여 우리는 스크린 공유를 하는 생방송에 필요한 미디어 흐름을 간단하게 분석할 수 있다. 만약 우리가 Audio App과 Audio Mic를 두 개의 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.