使用Picker View进行导航?

时间:2013-11-21 23:39:49

标签: ios uipickerview

我想使用选择器视图导航到不同的ViewControllers

这个人滚动到他想要的名字,在这种情况下让我们说索尼,然后他按下一个按钮,然后它将他带到一个分配给索尼的视图控制器。等等..

我在Youtube上播放了一段视频,该视频给出了我将在下面发布的代码,我接下来的教程创建了一个警报视图,它只是告诉您所选择的内容。我想将其替换为另一个ViewController的简单链接。

有人可以告诉我如何做到这一点?我是初学者,我正在努力学习最好的东西,似乎无法理解这一点。

我认为我需要添加代码位于斜杠的底部

.h:

#import <UIKit/UIKit.h>

@interface ViewController : UIViewController <UIPickerViewDelegate, UIPickerViewDataSource>


@property (weak, nonatomic) IBOutlet UIPickerView *Picker;

- (IBAction)ButtonPressed:(id)sender;

@end




.m:

#import "ViewController.h"

@interface ViewController ()



@property (strong, nonatomic) NSArray *array;
@end





@implementation ViewController

- (void)viewDidLoad
{
[super viewDidLoad];


NSArray *data = [[NSArray alloc] initWithObjects:@"Apple",@"Samsung", @"HTC", @"LG", @"Google", @"Asus", @"Nokia", @"Sony", nil];


self.array = data;

}


#pragma mark Picker Data Source Methods

-(NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView {


return 1;

}

-(NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component {

return [_array count];

}

#pragma mark Picker Delegate Methods

-(NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component {


return [_array objectAtIndex:row];


}




/////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}

- (IBAction)ButtonPressed:(id)sender {


NSString *select = [_array objectAtIndex:[_Picker selectedRowInComponent:0]];

NSString *tittle = [[NSString alloc] initWithFormat:@"You selected %@:", select];

UIAlertView *alert = [[UIAlertView alloc] initWithTitle:tittle message:@"YAY!" delegate:nil cancelButtonTitle:@"Ok" otherButtonTitles: nil];



[alert show];


}
//////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
@end

1 个答案:

答案 0 :(得分:0)

首先 - 我认为您应该考虑使用UITableView而不是UIPicker进行导航。 UITableView是一种标准,用户可能会发现通过UIPicker视图导航有点令人困惑。无论哪种方式,我都建议你去看一些仁慈的iOS大师:Ray Wenderlich来看看这些suuuuper有用的教程。

http://www.raywenderlich.com/tutorials

由于您所谈论的导航类型对于大多数应用来说都是非常标准的,因此很可能(事实上,我几乎可以保证它)您将找到一个解决方案来解决您在前几个教程。特别是,看看“如何创建一个简单的iPhone应用程序”系列(就在我上面提到的那个链接上)。你可以在那里找到丰富的知识,这将有助于你在iOS编程上大肆宣传。

所以,祝你好运,欢迎来到iOS!