2017-09-27 45 views
-3

我正在开发一个应用程序。设置图像清晰,然后才能运行在objective-c

我在UIViewController.Inside一个UIView的UIIView有16的UIImageView和标签1设置为16 并用于通过编码,以显示图像:

- (void)viewDidLoad { 
    [super viewDidLoad]; 

    //some images are stored in array.... 
    [self selectnext]; 
} 

-(void)selectnext{ 

    images=[[NSMutableArray alloc]initWithObjects:[UIImage imageNamed:@"Navarre-Family-Eye-Care-Navarre-Florida-Optometrist-Santa-Christmas-Toy-Safety.jpg"],[UIImage imageNamed:@"Christmas-Wallpapers-HD-Picture.jpg"],[UIImage imageNamed:@"Christmas-Wallpaper-jesus-9413550-1024-768.jpg"],[UIImage imageNamed:@"tree.jpg"],[UIImage imageNamed:@"luxury-christmas-napkins-father-christmas-1635-p.jpg"],[UIImage imageNamed:@"Navarre-Family-Eye-Care-Navarre-Florida-Optometrist-Santa-Christmas-Toy-Safety.jpg"],[UIImage imageNamed:@"Christmas-Wallpapers-HD-Picture.jpg"],[UIImage imageNamed:@"Christmas-Wallpaper-jesus-9413550-1024-768.jpg"],[UIImage imageNamed:@"tree.jpg"],[UIImage imageNamed:@"luxury-christmas-napkins-father-christmas-1635-p.jpg"], nil]; 

    NSString *dd=[NSString stringWithFormat:@"%@", images]; 
    NSLog(@"%@",dd); 




    //used random number for image...and got a random image 

    randomIndex1=arc4random() % images.count; 



    selectedImage = [images objectAtIndex:randomIndex1]; //random selected image 

    NSLog(@"%@",selectedImage); 





    //stored 1 to 10 numbers in array... 
    number = [[NSMutableArray alloc]initWithObjects:@"1",@"2",@"3",@"4",@"5",@"6",@"7",@"8",@"9",@"10", nil]; 

    //used random numbers in numbers...and got a random number.... 
    randomNumber = arc4random() % number.count; //random selected number 

    num= [number objectAtIndex:randomNumber]; 

    ss=[NSString stringWithFormat:@"%@",num]; 

    NSLog(@"%@",ss); 

    b = [ss integerValue]; 

    //NSLog(@"%ld",(long)b); 





    //dispalying the image based on random number 
    // for (int i = 0; i <b; i++) 
    // { 
    // NSLog(@"%@", selectedImage); 

    // _img.image = selectedImage; 

    //cell.img.image=selectedImage; 

    //} 


    //used tag on UIImageView to display the image.... 

    for (int j = 1 ; j <=b ; j++){ 
     subView = [self.view viewWithTag:j]; 

     if ([subView isKindOfClass:[UIImageView class]]){ 
      ((UIImageView *)subView).image = selectedImage; 



     } 
    } 

} 

-(void)check{ 

    if (d==b) { 



     selectedImage=[UIImage imageNamed:@""]; 

     //selectedImage.image=NULL; 

     [self selectnext]; 


    } 
    else 
    { 
     UIAlertController * alert=[UIAlertController alertControllerWithTitle:@"Title" 
                     message:@"Message" 
                   preferredStyle:UIAlertControllerStyleAlert]; 

     UIAlertAction* Retry = [UIAlertAction actionWithTitle:@" please retry ..." 
                  style:UIAlertActionStyleDefault 
                  handler:^(UIAlertAction * action) 
     { 
      /** What we write here???????? **/ 
      NSLog(@"you pressed Yes, please button"); 

      // call method whatever u need 
     }]; 

       [alert addAction:Retry]; 
       [self presentViewController:alert animated:YES completion:nil]; } 
} 

-(IBAction)button11:(id)sender 
{ 
    d=1; 
    [self check]; 
} 
-(IBAction)button12:(id)sender 
{ 
    d=2; 
    [self check]; 
} 
-(IBAction)button13:(id)sender 
{ 
    d=3; 
    [self check]; 
} 
-(IBAction)button14:(id)sender 
{ 
    d=4; 
    [self check]; 
} 
-(IBAction)button15:(id)sender 
{ 
    d=5; 
    [self check]; 
} 
-(IBAction)button16:(id)sender 
{ 
    d=6; 
    [self check]; 
} 
-(IBAction)button17:(id)sender 
{ 
    d=7; 
    [self check]; 
} 
-(IBAction)button18:(id)sender 
{ 
    d=8; 
    [self check]; 
} 
-(IBAction)button19:(id)sender 
{ 
    d=9; 
    *[self check]; 
} 
-(IBAction)button20:(id)sender 
{ 
    d=10; 
    [self check]; 
} 
- (void)didReceiveMemoryWarning { 
    [super didReceiveMemoryWarning]; 
    // Dispose of any resources that can be recreated. 
} 

according my code i got the output as below screen shot.

但当输出是正确的,然后去b == d然后在代码中调用名为selectcheck的函数。但在此之前,我需要从imageview中清除图像,否则输出如下面的屏幕截图。

in this screen shot some image are not going from the tag

那么,如何清除图像。

+0

组imageView.image =零,见你问同一个问题repeatedtly – karthikeyan

+0

简单地做像 对(INT J = 1;Ĵ<= B; J ++){ 的UIImage * selectedImage = [self.view viewWithTag: D];如果([subView isKindOfClass:[UIImageView class]]){(UIImageView *)subView).image = nil; //以及你想要更新数组索引也是空或零。 –

回答

0

点击按钮点击使用[self.view viewWithTag:yourImageviewTag]访问特定UIImageview,然后从UIImageview删除该图像。