NIDropDown iOS Obj-c-未获取选定值

时间:2019-02-28 15:40:34

标签: ios objective-c xcode

我正在使用NIDropDown:https://github.com/BijeshNair/NIDropDown 当我单击下拉列表并选择值时,它为我提供了先前选择的选项的值。我想知道我在做错什么,还是有什么我想做的??

这是我的代码(.h和.m文件)。

下面是ViewController.m文件

//
//  ViewController.m
//  NiDropDown
//
//  Created by ****** on 28/02/19.
//  Copyright © 2019 *****. All rights reserved.
//

#import "ViewController.h"
#import "NIDropDown.h"
@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
}


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


- (IBAction)btn_test:(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(dropDown1 == nil) {
        CGFloat f = 200;
        dropDown1 = [[NIDropDown alloc]showDropDown:sender theHeight:&f theArr:arr theImgArr:arrImage theDirection:@"down" withViewController:self];
        [dropDown1 setDropDownSelectionColor:[UIColor grayColor]];
        dropDown1.delegate = self;
    }
    else {
        [dropDown1 hideDropDown:sender];
        //        [self rel];
    }
}

- (void) niDropDownDelegateMethod:(UIView *)sender withTitle:(NSString *)title {
    //    [self rel];
    UIButton *btn = (UIButton *)sender;
    [btn setTitle:title forState:UIControlStateNormal];
    NSLog(@"%@", self.btn_test.titleLabel.text);


    //    [btnSelect setTitle:title forState:UIControlStateNormal];
}

- (void)niDropDownHidden:(NIDropDown *)sender{
    if (sender == dropDown1) {
        dropDown1 = nil;
    }else if(sender == dropDown2){
        dropDown2 = nil;
    }else{
        dropDown3 = nil;
    }

}
@end

下面是ViewController.h文件。

//
//  ViewController.h
//  NiDropDown
//
//  Created by ******* on 28/02/19.
//  Copyright © 2019 ******. All rights reserved.
//

#import <UIKit/UIKit.h>
#import "NIDropDown.h"

@interface ViewController : UIViewController <NIDropDownDelegate>
{
    NIDropDown *dropDown1, *dropDown2, *dropDown3;
}
@property (weak, nonatomic) IBOutlet UIButton *btn_test;
- (IBAction)btn_test:(id)sender;

@end

以下是我面临的问题的屏幕截图:https://imgur.com/a/B6KyBrE

这可能是代表的问题,但我无法解决,如果我的错误可以突出显示,我将不胜感激。

1 个答案:

答案 0 :(得分:0)

好,所以我不知道有多少人在iOS Obj-c中使用https://github.com/BijeshNair/NIDropDown进行DropDown。它是最好的图书馆之一。

所以回来回答很简单,我所做的是我将按钮类型更改为“自定义”,而之前是“系统”。