Checkbox in iOS application

前端 未结 13 1461
野趣味
野趣味 2020-12-01 01:48

I need to add checkbox controls to my form. I know that there is no such control in iOS SDK. How could I do this?

13条回答
  •  星月不相逢
    2020-12-01 02:35

    Subclass UIButton, drop a button to view controller, select it and change class name to CheckBox in the identity inspector.

    #import "CheckBox.h"
    
    @implementation CheckBox
    
    #define checked_icon @"checked_box_icon.png"
    #define empty_icon @"empty_box_icon.png"
    
    - (id)initWithCoder:(NSCoder *)aDecoder
    {
        self = [super initWithCoder:aDecoder];
        if (self)
        {
            [self setImage:[UIImage imageNamed:empty_icon] forState:UIControlStateNormal];
            [self addTarget:self action:@selector(didTouchButton) forControlEvents:UIControlEventTouchUpInside];
        }
        return self;
    }
    
    - (void)didTouchButton {
        selected = !selected;
        if (selected)
            [self setImage:[UIImage imageNamed:checked_icon] forState:UIControlStateNormal];
        else
            [self setImage:[UIImage imageNamed:empty_icon] forState:UIControlStateNormal];
    }
    
    @end
    

提交回复
热议问题