gpt4 book ai didi

ios - 点击 imageView 查看全屏图像

转载 作者:行者123 更新时间:2023-11-29 12:37:44 26 4
gpt4 key购买 nike

我的详细 View 中有一个 uiimageview,我想制作它以便当我点击图像时,它会全屏打开图像。但是,我下面的代码似乎不起作用。知道我做错了什么吗?

FullViewController.h

@interface FullArticleViewController : UIViewController <UINavigationControllerDelegate, UIImagePickerControllerDelegate, UIGestureRecognizerDelegate>


{
IBOutlet UITapGestureRecognizer *tap;
IBOutlet UIScrollView *scroller;
IBOutlet UILabel *firstnameLabel;
IBOutlet UILabel *bodyLabel;
IBOutlet UILabel *descriptionLabel;


BOOL isFullScreen;
CGRect prevFrame;
}

FullViewController.m

   - (void)viewDidLoad
{

[super viewDidLoad];
// Do any additional setup after loading the view from its nib.

if ([[articleDetail objectForKey:@"ytID"] isEqualToString:@"none"]) {

featureImage.userInteractionEnabled = YES;

NSString *imageUrl = [NSString stringWithFormat:@"image/%@",cellImageLink];

[self.featureImage sd_setImageWithURL:[NSURL URLWithString:imageUrl]];

[scroller setScrollEnabled:YES];

featureImage.userInteractionEnabled = YES;

[scroller bringSubviewToFront:featureImage];

UITapGestureRecognizer *tapgesture = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(imgToFullScreen)];
[tapgesture setNumberOfTapsRequired:1];

[featureImage addGestureRecognizer:tap];

}

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch;
{
BOOL shouldReceiveTouch = YES;

if (gestureRecognizer == tap) {
shouldReceiveTouch = (touch.view == featureImage);
}
return shouldReceiveTouch;
}

-(void)imgToFullScreen{
if (!isFullScreen) {
[UIView animateWithDuration:0.5 delay:0 options:0 animations:^{
//save previous frame
prevFrame = featureImage.frame;
[featureImage setFrame:[[UIScreen mainScreen] bounds]];
}completion:^(BOOL finished){
isFullScreen = true;
}];
return;
} else {
[UIView animateWithDuration:0.5 delay:0 options:0 animations:^{
[featureImage setFrame:prevFrame];
}completion:^(BOOL finished){
isFullScreen = false;
}];
return;
}
}

编辑:查看上面更新的代码和下面的层次结构

enter image description here

最佳答案

在你的 viewDidLoad: 方法中试试这个:

[featureImage setUserInteractionEnables:YES];

UITapGestureRecognizer *tapgesture = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(imgToFullScreen)];
[tapgesture setNumberOfTapsRequired:1];
[featureImage addGestureRecognizer:tapgesture];

关于ios - 点击 imageView 查看全屏图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25824904/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com