1

サブビューをウィンドウに追加しているiPhoneアプリケーションは正常に動作しますが、閉じるボタンを押すとサブビューを非表示にする必要があります。ここで、サブビューを作成するために実行しているコードです

 UIView*subView=[[UIView alloc]initWithFrame:CGRectMake(0,0, 1024,768)];
 subView.backgroundColor=[UIColor colorWithPatternImage:[UIImage imageNamed:@"bgPopupback.png"]];
 UIWindow* window = [UIApplication sharedApplication].keyWindow;
 if (!window) 
    window = [[UIApplication sharedApplication].windows objectAtIndex:0];
 [[[window subviews] objectAtIndex:0] addSubview:subView];  

閉じるボタン アクション

   -(void)closeButtonAction{



   NSLog(@"CLicked on this button");

  [subView removeFromSuperview] ; 

  self.tableView.userInteractionEnabled=TRUE;

  }
4

4 に答える 4

9

subView使用を削除できremoveFromSuperviewます。サブビューを非表示にしたい場合はsubView.hidden = YES;、ボタンアクション内で使用することを意味します

于 2013-07-18T05:17:23.050 に答える
3

ビューを削除する

[yourView removeFromSuperview];  

ビューを非表示にする

[yourView setHidden:YES];
于 2013-07-18T05:12:03.353 に答える
1

サブビューを非表示にするだけの場合は、 -(void)closeButtonAction メソッドで次のようにします

-(void)closeButtonAction{



   NSLog(@"CLicked on this button");

  //[subView removeFromSuperview] ; 

  subView.alpha = 0;

  self.tableView.userInteractionEnabled=TRUE;

  }
于 2013-07-18T06:26:08.963 に答える
0
viewDidLoad()
{
UIButton *m_btnSample = [UIButton buttonWithType:UIButtonTypeCustom];
    [m_btnSample setFrame:CGRectMake(200, 300, 200, 40)];
    [m_btnSample setImage:[UIImage imageNamed:@"smiley1.jpg"] forState:UIControlStateNormal];
    [m_btnSample addTarget:self action:@selector(btnChanged) forControlEvents:UIControlStateHighlighted];
    [self.view addSubview:m_btnSample];
}

 -(void)btnChanged
    {
        [viewYouWantToRemove removeFromSuperview];

    }
于 2013-07-18T05:15:49.893 に答える