Ios 试图使视图控制器在声明方法后显示

Ios 试图使视图控制器在声明方法后显示,ios,objective-c,uiviewcontroller,uiimageview,pushviewcontroller,Ios,Objective C,Uiviewcontroller,Uiimageview,Pushviewcontroller,这是我的密码,我不知道有什么问题。我担心ImagePickerController方法。有什么问题吗?我声明了图像视图的属性,我只希望ViewController转换到我的EditViewController,但在我选择了图像后,它会使我返回到ViewController,而不是edit view controller。 ViewController.h: #import <UIKit/UIKit.h> #import <iAd/iAd.h> @interface Vie

这是我的密码,我不知道有什么问题。我担心ImagePickerController方法。有什么问题吗?我声明了图像视图的属性,我只希望ViewController转换到我的EditViewController,但在我选择了图像后,它会使我返回到ViewController,而不是edit view controller。 ViewController.h:

#import <UIKit/UIKit.h>
#import <iAd/iAd.h>
@interface ViewController : UIViewController <UIImagePickerControllerDelegate ,
UINavigationControllerDelegate ,ADBannerViewDelegate>

-(IBAction)GoToEdit:(id)sender;
@property (weak, nonatomic) IBOutlet UIImageView *imageView;
@property (strong,nonatomic) UIImage *chosenImage;
@property (strong,nonatomic) UIImagePickerController *imagePicker;

@end
EditViewController.h(声明ImageView的属性)

#导入
@接口EditViewController:UIViewController
@属性(强,非原子)UIImage*chosenImage;
@结束

在您的imagePickerController中:didFinishPickingMediaWithInfo将最后4个替换为:

[self dismissViewControllerAnimated:YES completion:^{
    EditViewController *editViewController = [[EditViewController alloc]init];
    editViewController.chosenImage = self.chosenImage;
    [self.navigationController pushViewController:editViewController animated:YES];
}];

将editviewcontroller内容放入dismissViewControllerAnimated的完成处理程序中。嗨,Greg,我现在收到一个错误“从'UIImage*'分配给'UIImageView*'的指针类型不兼容”。这里显示的这部分代码看起来不错。能否在EditViewController.m文件中使用chosenImage的位置发布代码?你知道这是在哪一行发生的吗?嗨,格雷格,我修正了这个错误,但它仍然没有打开EditViewController。我在EditViewController.h上声明了chosenImage,还是应该在EditViewController.m上声明它?你确定要使用UINavigationController吗?如果不尝试使用presentModalViewController而不是pushViewController。您的chosenImage在.h文件中声明正确。
#import <UIKit/UIKit.h>

@interface EditViewController : UIViewController

@property (strong,nonatomic) UIImage *chosenImage;

@end
[self dismissViewControllerAnimated:YES completion:^{
    EditViewController *editViewController = [[EditViewController alloc]init];
    editViewController.chosenImage = self.chosenImage;
    [self.navigationController pushViewController:editViewController animated:YES];
}];