ios - 如何通过菜单按钮打开新的 View Controller ?

标签 ios objective-c xcode uibutton

我有一个菜单

enter image description here

它只显示选择按钮,但当我选择 Hello 2 打开 Hello2 View Controller 时我想要。

我的代码:

enter code here

 - (IBAction)selectClicked:(id)sender {
NSArray * arr = [[NSArray alloc] init];
arr = [NSArray arrayWithObjects:@"Hello 0", @"Hello 1", @"Hello 2", @"Hello 3", @"Hello   4", @"Hello 5", @"Hello 6", @"Hello 7", @"Hello 8", @"Hello 9",nil];
NSArray * arrImage = [[NSArray alloc] init];
arrImage = [NSArray arrayWithObjects:[UIImage imageNamed:@"apple.png"], [UIImage    imageNamed:@"apple2.png"], [UIImage imageNamed:@"apple.png"], [UIImage imageNamed:@"apple2.png"], [UIImage imageNamed:@"apple.png"], [UIImage imageNamed:@"apple2.png"], [UIImage imageNamed:@"apple.png"], [UIImage imageNamed:@"apple2.png"], [UIImage imageNamed:@"apple.png"], [UIImage imageNamed:@"apple2.png"], nil];
if(dropDown == nil) {
    CGFloat f = 200;
    dropDown = [[NIDropDown alloc]showDropDown:sender :&f :arr :arrImage :@"down"];
    dropDown.delegate = self;
}
else {
    [dropDown hideDropDown:sender];
    [self rel];
}
 }

-(void)rel{
//    [dropDown release];
  dropDown = nil;
 }

最佳答案

在选择表时调用委托(delegate)方法

- (void) niDropDownDelegateMethod: (NIDropDown *) sender 

找出从那里按下哪个选项并实现 push 方法

问题是代码没有提供获取所选值的方法。您必须查看该自定义类 NIDropDown并添加一个返回所选索引的值

解决方案

.h 添加
@property (nonatomic, assign) NSInteger *selectedIndex;

.m
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
     self.selectedIndex=indexPath.row;//Add this line
    [self myDelegate];
}

在 View Controller 中
- (void) niDropDownDelegateMethod: (NIDropDown *) sender {
    NSLog(@"%d",sender.selectedIndex);
}

关于ios - 如何通过菜单按钮打开新的 View Controller ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16809791/

相关文章:

ios - 使用 Cocoapods 和 Xcode 找不到 AWSCognitoIdentityService.m FABKitProtocol.h 文件

ios - 实现PFQueryTableViewController搜索功能

ios - 取消选中 "checked cell"

iphone - 如何扩大UIGestureRecognizer的点击区域?

iphone - 真的很奇怪 "[UIAccessibilityBundle setWhatever:]: unrecognized selector sent to instance 0xnnnnnnn"

iphone - 委托(delegate)们,我无法理解他们

ios - 准备使用 Sender 在 Swift 中进行 Segue

iphone - 设置 UINavigationController 的 Root View

ios - 如何修复错误 "Thread 1: EXC_BAD_ACCESS (code=2, address=0x7ffeeca55ff8)"

ios - 在 Xcode 9/Swift 4 中不再可以访问原生 UIKit 元素的 subview ?