Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/113.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 如何在UITextView中调整图像并点击以放大_Ios_Objective C_Uiimageview - Fatal编程技术网

Ios 如何在UITextView中调整图像并点击以放大

Ios 如何在UITextView中调整图像并点击以放大,ios,objective-c,uiimageview,Ios,Objective C,Uiimageview,我已经在主ViewController中创建了一个表视图,一旦我触摸到它将带到下一个视图控制器(DetailViewController)的行,它将显示图像和菜肴名称。一旦我点击图像,它应该会变大,但不会变大。下面的代码是我在DetailViewController中尝试的代码 DetailViewController.m - (void)viewDidLoad { [super viewDidLoad]; imageView=[[UIImageView alloc] initWithFrame

我已经在主ViewController中创建了一个表视图,一旦我触摸到它将带到下一个视图控制器(DetailViewController)的行,它将显示图像和菜肴名称。一旦我点击图像,它应该会变大,但不会变大。下面的代码是我在DetailViewController中尝试的代码

DetailViewController.m

- (void)viewDidLoad
{
[super viewDidLoad];
imageView=[[UIImageView alloc] initWithFrame:CGRectMake(10, 10,100, 100)];
CGRect textViewFrame = CGRectMake(10, 10, 300, 400);
textView = [[UITextView alloc] initWithFrame:textViewFrame];
textView.returnKeyType = UIReturnKeyDone;
textView.backgroundColor=[UIColor whiteColor];
textView.editable=NO;
textView.delegate = self;
[self.view addSubview:textView]; 
[textView addSubview:imageView];
textView.alpha = 0.9;
textView.font = [UIFont systemFontOfSize:15];

if(mrowno==0)
{
     imageView.image=[UIImage imageNamed:@"Dosa.jpg"];  
    textView.text = @"\n\n\n\n\n\n\n\nDOSA\nDosa, ";
    imageButton = [[UIButton alloc]init];
    [imageButton setFrame:CGRectMake(0, 0, 100, 100)];
    [imageButton addTarget:self action:@selector(imageTapped:) forControlEvents:UIControlEventTouchUpInside];
    [imageView addSubview:imageButton];

}
下面是放大图像的方法

-(void)imageTapped:(UIButton*)in_sender
{


[UIView transitionWithView:in_sender.superview  duration:0.8f  options:UIViewAnimationOptionCurveLinear  animations:^
 {  
     [in_sender.superview setFrame:CGRectMake(0, 0, 300, 500)];
 }
                completion:^(BOOL finished) 
 {
 }];
}

您不想在视图中使用
transitionWithView
。相反,您希望使用
+animateWithDuration:delay:options:animations:completion:
(或其任何较短的变体…)

编辑:如果您想知道transitionWithView的用途是什么。。。有一个很好的例子,为remove/addSubview方法添加动画(不是帧修改):


如果需要,您可以通过收缩和收缩来增大和减小图像的大小

-(void)viewDidLoad
 { 
 UIPinchGestureRecognizer* pinch=[[UIPinchGestureRecognizer alloc] initWithTarget:self            action:@selector(pinching:)];
[self.imageView addGestureRecognizer:pinch];
  }

-(void)pinching:(UIGestureRecognizer*) recognizer
 {
UIPinchGestureRecognizer* pinch=(UIPinchGestureRecognizer*) recognizer;
self.imageView.transform=CGAffineTransformScale(self.imageView.transform, pinch.scale, pinch.scale);
pinch.scale=1;
NSLog(@"pinching");
 }
[UIView transitionWithView:containerView
       duration:0.2
       options:UIViewAnimationOptionTransitionFlipFromLeft
       animations:^{
           [fromView removeFromSuperview];
           [containerView addSubview:toView];
       } completion:NULL];
-(void)viewDidLoad
 { 
 UIPinchGestureRecognizer* pinch=[[UIPinchGestureRecognizer alloc] initWithTarget:self            action:@selector(pinching:)];
[self.imageView addGestureRecognizer:pinch];
  }

-(void)pinching:(UIGestureRecognizer*) recognizer
 {
UIPinchGestureRecognizer* pinch=(UIPinchGestureRecognizer*) recognizer;
self.imageView.transform=CGAffineTransformScale(self.imageView.transform, pinch.scale, pinch.scale);
pinch.scale=1;
NSLog(@"pinching");
 }