我在视图控制器下有两个按钮。其中一个按钮进行计算。第二个显示有关这些计算的信息。对于我使用模态segue到另一个称为werkwijzeViewController的视图控制器的信息。计算按钮不会造成问题。在按下信息按钮时,我得到“UIStoryboardModalSegue popoverController”:无法识别的选择器发送到实例“。怎么了?我上传了一些相关代码:由于实例选择器,模态segue不会启用
viewcontroller.h
#import <UIKit/UIKit.h>
#import "breuk.h"
#import "verklaringViewController.h"
@interface ViewController : UIViewController <UIPopoverControllerDelegate>
@property (strong, nonatomic) IBOutlet UITextField *tellerVeld1;
@property (strong, nonatomic) IBOutlet UITextField *noemerVeld1;
@property (strong, nonatomic) IBOutlet UILabel *quotientVeld;
@property (strong, nonatomic) IBOutlet UITextField *tellerVeld2;
@property (strong, nonatomic) IBOutlet UITextField *noemerVeld2;
@property (strong, nonatomic) IBOutlet UIButton *berekenKnop;
@property (strong, nonatomic) breuk *breuk1;
@property (strong, nonatomic) breuk *breuk2;
@property (strong, nonatomic) breuk *hoofdbreuk;
@property (strong, nonatomic) IBOutlet UITextField *uitkomstNoemerVeld;
@property (strong, nonatomic) IBOutlet UITextField *uitkomstTellerVeld;
@property (strong, nonatomic) IBOutlet UILabel *uitkomstStreep;
@property (strong, nonatomic) UIPopoverController *popoverController;
- (IBAction)berekenQuotient:(id)sender;
@end
viewcontroller.m
#import "ViewController.h"
@interface ViewController()
{
BOOL veldVerplaatst;
}
@end
@implementation ViewController
@synthesize tellerVeld1;
@synthesize noemerVeld1;
@synthesize quotientVeld;
@synthesize tellerVeld2;
@synthesize noemerVeld2;
@synthesize berekenKnop;
@synthesize uitkomstNoemerVeld;
@synthesize uitkomstTellerVeld;
@synthesize uitkomstStreep;
@synthesize breuk1;
@synthesize breuk2;
@synthesize hoofdbreuk;
@synthesize popoverController;
...
- (空)prepareForSegue:(UIStoryboardSegue * )segue发件人:(id)发件人{
UIStoryboardPopoverSegue *popoverSegue;
popoverSegue=(UIStoryboardPopoverSegue *)segue;
UIPopoverController *popoverController;
popoverController = popoverSegue.popoverController;
popoverController.delegate = self;
verklaringViewController *verklaringVC;
verklaringVC=(verklaringViewController *)popoverController.contentViewController;
...
}
@end
werkwijzeViewController.h
#import <UIKit/UIKit.h>
#import "ViewController.h"
@interface werkwijzeViewController : UIViewController
@property (strong, nonatomic) IBOutlet UIButton *af;
@property (strong, nonatomic) IBOutlet UITextView *vereenvoudigBreuken;
@property (strong, nonatomic) IBOutlet UITextView *vermenigvuldigBreuken;
@property (strong, nonatomic) NSMutableArray *tabelTellerOntbonden;
@property (strong, nonatomic) NSMutableArray *tabelNoemerOntbonden;
@property (strong, nonatomic) NSMutableArray *tabelGgdOntbonden;
@end
werkwijzeViewController.m
#import "werkwijzeViewController.h"
@interface werkwijzeViewController()
@end
@implementation werkwijzeViewController
@synthesize tabelGgdOntbonden;
@synthesize tabelNoemerOntbonden;
@synthesize tabelTellerOntbonden;
...
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view.
tabelTellerOntbonden =[NSMutableArray new];
tabelTellerOntbonden = [((ViewController *)self.presentingViewController).breuk1 ontbindInFactoren:((ViewController *)self.presentingViewController).breuk1.tellerBreuk inTabel:tabelTellerOntbonden];
NSLog(@"%@",tabelTellerOntbonden);
}
@end
breuk.m
#import "breuk.h"
@implementation breuk
@synthesize tellerBreuk;
@synthesize noemerBreuk;
@synthesize origineleNoemerBreuk;
@synthesize origineleTellerBreuk;
@synthesize ggd;
@synthesize quotientBreuk;
...
- (NSMutableArray *)ontbindInFactoren:(int)product inTabel:(NSMutableArray *)tabel
{
for (int priemfactor=1; priemfactor<=product; priemfactor++)
{
while (product%priemfactor==0)
{
[tabel addObject:[NSString stringWithFormat:@"%i",priemfactor]];
}
}
return tabel;
}
@end
我按照你的意见。问题是以下几点:我首先做popover,然后按popover外面,然后我想参加模态赛。正如你所建议的ios认为segue仍然是popover。我怎样才能将赛格变成模态?如果我不首先点击弹出式按钮,模式的代码将起作用。但是我想把它们结合起来...... – user2895954