【问题标题】:How to add scroll view on uiimage in uialertview in objective c如何在目标c的uialertview中的uiimage上添加滚动视图
【发布时间】:2017-02-07 10:03:13
【问题描述】:

我是 iOS 新手,在 UIAlertView 的 UIImage 上添加 UIscrollview 时遇到问题。 我的代码是这样的

在 ViewDidLoad 中

newsimage.userInteractionEnabled=YES;
    UILongPressGestureRecognizer *longpressgestureRecognizer = [[UILongPressGestureRecognizer alloc] init];
    [longpressgestureRecognizer addTarget:self action:@selector(imgLongPressed:)];
    longpressgestureRecognizer.delegate = self;
    [newsimage addGestureRecognizer: longpressgestureRecognizer];

- (void) imgLongPressed:(UILongPressGestureRecognizer*)sender
{
    UIImageView *imageView = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 200, 200)];
    CGSize size = CGSizeMake(200, 200); // set the width and height
    UIImage *resizedImage = [self resizeImage:newsimage.image imageSize:size];
    UIImage *wonImage = resizedImage;
    imageView.contentMode=UIViewContentModeCenter;
    [imageView setImage:wonImage];
    alertViewpress = [[UIAlertView alloc] initWithTitle:@""
                                                message:@""
                                               delegate:self
                                      cancelButtonTitle:nil
                                      otherButtonTitles:@"OK", nil];
    //check if os version is 7 or above
    if (floor(NSFoundationVersionNumber) > NSFoundationVersionNumber_iOS_6_1) {
        [alertViewpress setValue:imageView forKey:@"accessoryView"];
    }else{
        [alertViewpress addSubview:imageView];
    }
    [alertViewpress show];
    [self performSelector:@selector(dismiss:) withObject:alertViewpress afterDelay:1.0];
}
- (void)willPresentAlertView:(UIAlertView *)alertView {
    [alertView setFrame:CGRectMake(0, 0, 200, 200)];
}
-(void)dismiss:(UIAlertView*)alert
{
    [alert dismissWithClickedButtonIndex:0 animated:YES];
}

-(UIImage *)resizeImage:(UIImage *)image imageSize:(CGSize)size
{
    UIGraphicsBeginImageContext(size);
    [image drawInRect:CGRectMake(0,0,size.width,size.height)];
    UIImage* newImage = UIGraphicsGetImageFromCurrentImageContext();
    // here is the scaled image which has been changed to the size specified
    UIGraphicsEndImageContext();
    return newImage;
}

如何添加滚动视图以便滚动图像或如何更改 UIAlertView 的大小,或者是否可以更改 UIAlertView 的大小。提前致谢!

【问题讨论】:

  • 您无法更改警报视图或更改警报视图的大小。您可以尝试自定义视图。
  • @user3182143 我可以在这段代码中添加 Scrollview 吗?
  • 在滚动视图中添加图像。不要在警报视图中设置图像。
  • @user3182143 我面临的问题。
  • @user3182143 如何在长按手势方法中添加自定义视图并添加此代码。请分享任何示例或代码。

标签: ios objective-c uiscrollview uiimage


【解决方案1】:

我给你你的要求。你的视图名称是 customView,你为此设置了框架。现在代码如下所示。

UILongPressGestureRecognizer *longPressOnCustomView = [[UILongPressGestureRecognizer alloc] initWithTarget:self action:@selector(longPressOnCustomView:)];
longPressOnCustomView.delegate = self;
customView.userInteractionEnabled = YES;
[customView addGestureRecognizer:longPressOnCustomView];

#pragma mark Long Press Gesture Recognizer
- (void)longPressOnCustomView:(UILongPressGestureRecognizer*)gesture
{
    if (gesture.state == UIGestureRecognizerStateEnded)
    {
       //Code for scrolling the image
    }
}

【讨论】:

  • 我需要代码在 UIAlertview 或 CustomView 中滚动。我已经添加了手势代码。
  • 滚动视图中如何需要图像?
猜你喜欢
  • 1970-01-01
  • 2023-03-17
  • 2013-01-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-09-16
  • 2014-03-20
相关资源
最近更新 更多