2016-04-10 2 views
1

У меня есть UISlider в ошибке UITableViewCell.ios slider action в UITableViewCell

this my UITableViewCell

При нажатии ползунка, то он помещает это:

-[MyCell slider:]: unrecognized selector sent to instance 0x7fcf81d82ab0 
    2016-04-10 22:24:49.947 TableViewController3[2372:153428] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[MyCell slider:]: unrecognized selector sent to instance 0x7fcf81d82ab0' 

Вот мой код

мой TableViewCell класс

#import <UIKit/UIKit.h> 

    @interface MyCell : UITableViewCell 


    @property (weak, nonatomic) IBOutlet UITextView *questionText; 

    @property (weak, nonatomic) IBOutlet UITextField *slider_value_text; 
    @property (weak, nonatomic) IBOutlet UISlider *slider; 
    @end 
-----------------------------------------------------------------------  


    #import "MyCell.h" 

    @implementation MyCell 

    - (void)awakeFromNib { 
     [super awakeFromNib]; 
     // Initialization code 
    } 

    - (void)setSelected:(BOOL)selected animated:(BOOL)animated { 
     [super setSelected:selected animated:animated]; 

     // Configure the view for the selected state 
    } 

    @end 

мой UITableViewController класс

#import <UIKit/UIKit.h> 
#import "MyCell.h" 
@interface myTableViewController : UITableViewController 

@property NSArray *arr1; 
-(void)Selector:(id)sender; 
@end 

#import "myTableViewController.h" 

@interface myTableViewController() 

@end 

@implementation myTableViewController 
@synthesize arr1; 

- (void)viewDidLoad { 
    [super viewDidLoad]; 

    NSLog(@"here amq"); 
    [email protected][@"homer",@"marge",@"lisa",@"asd eq hayde ewqewqsdaqww asd sad beklqwee awe qwe"]; 


} 

- (void)didReceiveMemoryWarning { 
    [super didReceiveMemoryWarning]; 

} 

#pragma mark - Table view data source 

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView { 
#warning Incomplete implementation, return the number of sections 
    return 1; 
} 

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section { 
#warning Incomplete implementation, return the number of rows 
    return [arr1 count]; 
} 


- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { 

    MyCell *cell = [tableView dequeueReusableCellWithIdentifier:@"cell" forIndexPath:indexPath]; 


    cell.questionText.text=[arr1 objectAtIndex:indexPath.row]; 
    [[cell slider ] setMaximumValue:1]; 
    [[cell slider ] setMaximumValue:5]; 
    [[cell slider ] setTintColor:[UIColor redColor]]; 
    [[cell slider] setTag:indexPath.row]; 
    [[cell slider] addTarget:self action:@selector(generalSelector:) forControlEvents:UIControlEventValueChanged]; 

    return cell; 
} 

-(void)Selector:(id)sender{ 
    if ([sender isKindOfClass:[UISlider class]]){ 
     UISlider *slider = (UISlider *)sender; 
     NSLog(@"Slider value %f",slider.value); 
    } 

} 
+0

Какая строка кода вызывает сбой? – rmaddy

+0

, когда я щелкнул по ползунку на экране приложения, ошибка возникает в main.m Эта строка возвращает «UApplicationMain» (argc, argv, nil, NSStringFromClass ([Класс AppDelegate])) «» -> Theard1 SIGABRT –

+0

У вас есть общий выбор : метод в реализации myTableViewController? – lorenzoliveto

ответ

0

Вы должны заменить generalSelector: с действительным именем селектора вы хотите позвонить, когда ползунок изменяет свое значение. В этом случае следует заменить generalSelector: с Selector: Прочитайте это, если вы хотите объяснение того, что селектор: https://developer.apple.com/library/ios/documentation/General/Conceptual/DevPedia-CocoaCore/Selector.html

+0

Спасибо, я решил –

+1

Если он решил вашу проблему, примите ответ, нажав галочку. Также повышайте его, если хотите. – Almo