0

ボタンが1つあるビューを表示しています。このボタンをクリックすると、Objective Cで定義されたアニメーションメソッドを使用してポップアップビューが表示され、ポップアップビューに画像が追加されます。次に、ビューをタップすると、このポップアップビューが表示されます。幅と高さをゼロに設定して非表示にしていますが、その上の画像は非表示になっています。非表示にするにはどうすればよいですか。これらは私が使用している方法です。

このメソッドは、ボタンをクリックした後に呼び出されます。

-(void)btnImageClkForPopUp:(id)sender
{  
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:2.5];
popup_viewforimage.frame=CGRectMake(8, 30, 300, 250);
popup_viewforimage.backgroundColor=[UIColor whiteColor];

UIImageView *imgview=[[UIImageView alloc]initWithFrame:CGRectMake(0, 0, 300, 250)];
imgview.image=[UIImage imageNamed:@"apple.jpeg"];
[popup_viewforimage addSubview:imgview];

[self.view addSubview:popup_viewforimage];   
[UIView commitAnimations];
}

これらの2つのメソッドは、ビューをタップタッチした後にこれを非表示にするために呼び出されます

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch
{
if ([touch.view isKindOfClass:[UIButton class]])
{ 
 return NO;
}
return YES;   
}

-(void)hidekeyboard
{
 [UIView beginAnimations:nil context:nil];
 [UIView setAnimationDuration:2.5];
 popup_viewforimage.frame=  CGRectMake(15, 65, 0, 0);
 popup_viewforimage.backgroundColor=[UIColor grayColor];
 [self.view addSubview:popup_viewforimage];
  [UIView commitAnimations]; 
}
4

2 に答える 2

0
for (UIView *vw in popup_viewforimage.subviews) {
    if ([vw isKindOfClass:[UIImageView class]]) {
        vw.hidden=YES;
    }
}
于 2013-02-22T12:41:18.793 に答える
0

使用する

[popup_viewforimage removeFromSuperView];

また

アルファを0に設定します

popup_viewforimage.alpha=0.0;
于 2013-02-22T12:36:55.630 に答える