ios - 如果没有选中单元格,则禁用 "Next"按钮

标签 ios xcode core-data didselectrowatindexpath

感谢您的帮助!

我像那样更改了 Viewdidload,它现在对我来说工作正常!我正在获取位置并使用谓词来同步检查和按钮的状态

  - (void)viewDidLoad
  {
    [super viewDidLoad];
    app = (AppDelegate *) [[UIApplication sharedApplication] delegate];

    NSManagedObjectContext *context = [app managedObjectContext];
    NSFetchRequest *request = [[NSFetchRequest alloc] init];
    NSEntityDescription *entity = [NSEntityDescription entityForName:@"Standort" inManagedObjectContext:context];
    NSPredicate *predicate = [NSPredicate predicateWithFormat:@"ortcheck CONTAINS YES"];
    [request setPredicate:predicate];
    [request setEntity:entity];

    NSError *error = nil;
    NSArray *events = [context executeFetchRequest:request error:&error];    
    int i = events.count;

    if (i == 0) {

        myWeiter = [[UIBarButtonItem alloc] initWithTitle:@"Weiter" style:UIBarButtonItemStyleBordered target:self action:@selector(nextPressed:)];

        self.navigationItem.rightBarButtonItem = myWeiter;


         self.navigationItem.rightBarButtonItem.enabled = NO;
    }
    else {
        myWeiter = [[UIBarButtonItem alloc] initWithTitle:@"Weiter" style:UIBarButtonItemStyleBordered target:self action:@selector(nextPressed:)];

        self.navigationItem.rightBarButtonItem = myWeiter;


        self.navigationItem.rightBarButtonItem.enabled = YES;
    }

最佳答案

添加一个检查计数器作为实例成员,并将其初始化为 0,每次检查时增加它,每次取消检查时减少它,每次检查后设置按钮:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {

    // snip

    //if (cell.checkButton.hidden==YES){
    //    cell.checkButton.hidden=NO;
    //}else {
    //    cell.checkButton.hidden=YES;
    //}
    BOOL state = !cell.checkButton.hidden;
    cell.checkButton.hidden=state; // simpler
    self.counter += (state) ? 1 : -1;
    [nextButton setEnabled: counter > 0];

    // snap
}

关于ios - 如果没有选中单元格,则禁用 "Next"按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10277671/

相关文章:

xcode - 创建 OpenSSL Framework 时某些体系结构的 undefined symbol

iPhone coredata 获取请求,关系和部分的基础知识

ios - 如何给 UIBarButtonItem 添加边框

iOS UIWebView 缓存问题

c++ - 使用 std::stringstream 将 boost::int64_t 大数转换为字符串。

Xcode 文档注释语法

ios - React-Native:为什么在 iOS 设备上测试时会出现网络错误

ios - 核心数据使用完成处理程序执行获取请求或在主线程以外的其他线程中执行

ios - 使用 CoreData 保存 EVObject

iOS SceneKit 统计解释