SettingBodyView.m 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. //
  2. // SettingBodyView.m
  3. // KulexiuForTeacher
  4. //
  5. // Created by Kyle on 2022/3/22.
  6. //
  7. #import "SettingBodyView.h"
  8. @interface SettingBodyView ()
  9. @property (nonatomic, copy) SettingCallback callback;
  10. @property (weak, nonatomic) IBOutlet UIButton *switchButton;
  11. @property (weak, nonatomic) IBOutlet UIView *checkView;
  12. @end
  13. @implementation SettingBodyView
  14. + (instancetype)shareInstance {
  15. SettingBodyView *view = [[[NSBundle mainBundle] loadNibNamed:@"SettingBodyView" owner:nil options:nil] firstObject];
  16. return view;
  17. }
  18. - (void)settingAction:(SettingCallback)callback {
  19. if (callback) {
  20. self.callback = callback;
  21. }
  22. }
  23. - (IBAction)tapAction:(UITapGestureRecognizer *)sender {
  24. NSInteger index = sender.view.tag;
  25. if (self.callback) {
  26. self.callback(index);
  27. }
  28. }
  29. - (IBAction)enableCheckAction:(id)sender {
  30. self.enableCheck = !self.enableCheck;
  31. if (self.callback) {
  32. self.callback(SETTINGACTION_ONLINECHECK);
  33. }
  34. }
  35. - (void)setEnableCheck:(BOOL)enableCheck {
  36. _enableCheck = enableCheck;
  37. NSString *imageName = enableCheck ? @"switch_on" : @"switch_off";
  38. [self.switchButton setImage:[UIImage imageNamed:imageName] forState:UIControlStateNormal];
  39. }
  40. - (IBAction)logoutAction:(id)sender {
  41. if (self.callback) {
  42. self.callback(SETTINGACTION_LOGOUT);
  43. }
  44. }
  45. - (void)setIsMember:(BOOL)isMember {
  46. _isMember = isMember;
  47. if (isMember) {
  48. self.checkView.hidden = YES;
  49. }
  50. else {
  51. self.checkView.hidden = NO;
  52. }
  53. }
  54. /*
  55. // Only override drawRect: if you perform custom drawing.
  56. // An empty implementation adversely affects performance during animation.
  57. - (void)drawRect:(CGRect)rect {
  58. // Drawing code
  59. }
  60. */
  61. @end