我是使用xcode开发的新手,我正在关注苹果的教程:“Second的ios app教程”。我在我的场景“添加瞄准视图控制器”中添加了一个按钮,我想将此视图切换到另一个(BirdsViewController),其中包含鸟的名称列表。在我的故事板中,我在按钮和BirdsViewController之间创建了一个segue,并且还连接按钮以在内部进行修饰,但是当我运行应用程序时按钮没有出现。可以有人帮助我吗?谢谢。 这是我的代码(我没有实现任何其他方法):
AddSightingViewController.h
@class BirdSighting;
@interface AddSightingViewController : UITableViewController
@property (weak, nonatomic) IBOutlet UITextField *birdNameInput;
@property (weak, nonatomic) IBOutlet UITextField *locationInput;
@property (strong, nonatomic) BirdSighting *birdSighting;
@property (strong, nonatomic) UIButton *showBirds;
-(IBAction)displayBirds:(id)sender;
AddSightingViewController.m
#import "AddSightingViewController.h"
#import "BirdSighting.h"
#import "BirdsViewController.h"
#import <UIKit/UIKit.h>
@class BirdSighting;
@interface AddSightingViewController ()
@end
@implementation AddSightingViewController
@synthesize showBirds;
-(BOOL)textFieldShouldReturn:(UITextField *)textField {
if((textField == self.birdNameInput) || (textField == self.locationInput)) {
[textField resignFirstResponder];
}
return YES;
}
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
if([[segue identifier] isEqualToString:@"ReurnInput"]) {
if ([self.birdNameInput.text length] || [self.locationInput.text length])
{
BirdSighting *sighting;
NSDate *today = [NSDate date];
sighting = [[BirdSighting alloc] initWithName:self.birdNameInput.text
location:self.locationInput.text date:today];
self.birdSighting = sighting;
}
}
}
BirdsViewController *viewController;
-(IBAction)showBirds:(id)sender {
viewController =
[[BirdsViewController alloc]
initWithNibName:@"BirdsViewController" bundle:nil];
[[self navigationController] pushViewController:viewController animated:YES];
}
答案 0 :(得分:0)
我没有看到任何分配和添加按钮作为子视图到viewcontroller的视图。
我认为在应用程序中像其他文本字段一样,按钮也是IBOutlet。将按钮声明为IBOutlet,并将插座连接到界面构建器文件中的按钮。
@property(弱,非原子)IBOutlet UIButton * showBirds;
或者分配按钮并将其作为子视图添加到viewcontroller的视图中。