Ios Segue也不是我想要的那样工作
我对如何开发应用程序非常陌生,我试图从互联网上的信息和几周前的“短期课程”中获取信息 我正在尝试将视图控制器中的信息切换到辅助控制器。在第一个视图控制器中,用户输入一个代码,它查找plist并显示其中的3个代码 我将提供我拥有的代码,任何帮助都将不胜感激: 我有3个控制器 导航控制器 视图控制器.h DetailViewController.h 我的Plist采用以下格式(尽管有25000多行)Ios Segue也不是我想要的那样工作,ios,iphone,objective-c,ipad,Ios,Iphone,Objective C,Ipad,我对如何开发应用程序非常陌生,我试图从互联网上的信息和几周前的“短期课程”中获取信息 我正在尝试将视图控制器中的信息切换到辅助控制器。在第一个视图控制器中,用户输入一个代码,它查找plist并显示其中的3个代码 我将提供我拥有的代码,任何帮助都将不胜感激: 我有3个控制器 导航控制器 视图控制器.h DetailViewController.h 我的Plist采用以下格式(尽管有25000多行) 身份证件 0A00 M=0 0 M=1 1533 M=2 3066 那么你的问题是什么?你解释了你
身份证件
0A00
M=0
0
M=1
1533
M=2
3066
那么你的问题是什么?你解释了你想要什么,并扔掉了一堆代码,但你没有说什么目前不起作用。抱歉,我需要把信息推给第二个VC,当我按下“提交”按钮时,我已经准备好了信息,但没有按照。如果我问的是“太多”(我不知道为什么它不起作用,但这是因为我缺乏知识)任何关于阅读材料的建议都将不胜感激。不是“太多”,但可能不够具体。通过描述你想要发生的事情并将其与实际发生的事情进行对比,你会得到更好的答案。作为一般性评论,NSLog()
可以成为你最好的朋友,了解事情是否与你所想的一样,并将结果传达给他人。
#import <UIKit/UIKit.h>
@interface ViewController : UIViewController
@property (strong, nonatomic) IBOutlet UITextField *codeTextField;
@end
#import "ViewController.h"
#import "ViewController.h"
#import "DetailViewController.h"
@interface ViewController ()
@property (strong, nonatomic) NSArray *ID;
@end
@implementation GBRFViewController
#pragma mark View lifecycle
- (void)viewDidLoad
{
[super viewDidLoad];
// Automatically present the keyboard when this screen is first displayed
[self.headcodeTextField becomeFirstResponder];
NSString *dataFilePath = [[NSBundle mainBundle] pathForResource:@"ID" ofType:@"plist"];
self.ID = [NSArray arrayWithContentsOfFile:dataFilePath];
}
#pragma mark Scene management
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
// Move the search term across into the results view controller as it is presented
GBRFDetailViewController *controller = segue.destinationViewController;
controller.searchTerm = self.headcodeTextField.text;
}
#pragma mark Text field delegate
- (BOOL)textFieldShouldReturn:(UITextField *)textField
{
// Kick off the segue manually when the return key is tapped
[self performSegueWithIdentifier:@"searchSegue" sender:self];
return YES;
}
@end
#import <UIKit/UIKit.h>
@interface GBRFDetailViewController : UIViewController
@property (strong, nonatomic) NSDictionary *IDDetail;
@property (strong, nonatomic) NSString *searchTerm;
@end
#import "DetailViewController.h"
@interface DetailViewController ()
@property (strong, nonatomic) UIPopoverController *masterPopoverController;
@property (strong, nonatomic) IBOutlet UILabel *titleLabel;
@property (strong, nonatomic) IBOutlet UILabel *code1Label;
@property (strong, nonatomic) IBOutlet UILabel *code2Label;
@property (strong, nonatomic) IBOutlet UILabel *code3Label;
@end
@implementation DetailViewController
#pragma mark View lifecycle
- (void)viewDidLoad
{
[super viewDidLoad];
// Setting the title on the view controller will automatically update the navigation bar title
self.title = self.searchTerm;
// Only set the outlets up if the book detail is set
if (self.IDDetail)
[self configureView];
}
- (void)configureView
{
// The title of the view controller is displayed in the navigation bar
self.title = self.IDDetail[@"Title"];
// Take the data out of the dictionary and populate the outlets
self.titleLabel.text = self.IDDetail[@"ID"];
self.code1Label.text = self.IDDetail[@"Code1"];
self.code2Label.text = self.IDDetail[@"Code2"];
self.code3Label.text = self.IDDetail[@"Code3"];
}
#pragma mark Property overrides
- (void)setIDDetail:(NSDictionary *)IDDetail
{
if (_IDDetail != IDDetail) {
_IDDetail = IDDetail;
[self configureView];
}
}
#pragma mark Split view controller
- (void)splitViewController:(UISplitViewController *)splitViewController willHideViewController:(UIViewController *)viewController withBarButtonItem:(UIBarButtonItem *)barButtonItem forPopoverController:(UIPopoverController *)popoverController
{
[self.navigationItem setLeftBarButtonItem:barButtonItem animated:YES];
self.masterPopoverController = popoverController;
barButtonItem.title = @"IDs";
}
- (void)splitViewController:(UISplitViewController *)splitViewController willShowViewController:(UIViewController *)viewController invalidatingBarButtonItem:(UIBarButtonItem *)barButtonItem
{
[self.navigationItem setLeftBarButtonItem:nil animated:YES];
self.masterPopoverController = nil;
}
@end
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>ID</key>
<string>0A00</string>
<key>M=0</key>
<string>0</string>
<key>M=1</key>
<string>1533</string>
<key>M=2</key>
<string>3066</string>
</dict>
</plist>