CustomTextField.h 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. //
  2. // CustomInsetTextField.h
  3. // JasonDevelop
  4. //
  5. // Created by Jason Lee on 2013. 12. 6..
  6. // Copyright (c) jasondevelop. All rights reserved.
  7. //
  8. // NIB에서 로드하는 경우 아래 값을 직접 설정한다.
  9. // hasMoveButton
  10. // disablePrevButton
  11. // disableNextButton
  12. @import UIKit;
  13. @protocol CustomTextFieldDelegate <UITextFieldDelegate>
  14. @optional
  15. - (void)moveToNextField:(id)sender;
  16. - (void)moveToPrevField:(id)sender;
  17. - (void)willHideKeyboard:(id)sender;
  18. - (void)deleteBackward:(id)sender;
  19. @end
  20. typedef enum {
  21. CustomTextFieldSuperviewIsNone = 0,
  22. CustomTextFieldSuperviewIsViewController, //부모뷰가 컨트롤러일 경우,
  23. CustomTextFieldSuperviewIsPopup, //부모뷰가 팝업일 경우,
  24. CustomTextFieldSuperviewIsScrollView, //부모뷰가 컨테이너일 경우,
  25. CustomTextFieldSuperviewIsPopupContentView, //부모뷰가 팝업내의 컨테이너일 경우,
  26. CustomTextFieldSuperviewIsContentView,
  27. CustomTextFieldSuperviewIsChildViewController //부모뷰가 컨테이너일 경우,
  28. } CustomTextFieldSuperview;
  29. extern CGRect gKeyboardRect;
  30. @interface CustomTextField : UITextField {
  31. @protected
  32. CustomTextFieldSuperview _customTextFieldSuperview;
  33. BOOL _autoScrollUp;
  34. }
  35. @property (nonatomic, assign) id <CustomTextFieldDelegate> delegate;
  36. @property (nonatomic, assign) CustomTextFieldSuperview customTextFieldSuperview;
  37. @property (nonatomic, assign) IBInspectable BOOL autoScrollUp;
  38. @property (nonatomic, assign) IBInspectable BOOL disable;
  39. @property (nonatomic, assign) IBInspectable BOOL hasMoveButton; //set with interfacebuilder
  40. @property (nonatomic, assign) IBInspectable BOOL disablePrevButton; //set with interfacebuilder
  41. @property (nonatomic, assign) IBInspectable BOOL disableNextButton; //set with interfacebuilder
  42. @property (nonatomic, strong) IBInspectable NSString *bgImageName;
  43. @property (nonatomic, strong) IBInspectable NSString *bgPressImageName;
  44. @property (nonatomic, strong) IBInspectable NSString *bgDisableImageName;
  45. @property (nonatomic, strong) IBInspectable UIColor *placeHolderColor;
  46. @property (assign, nonatomic) IBInspectable CGRect rectForCapBackground; //set with interfacebuilder
  47. - (id)initWithFrame:(CGRect)frame bgImageName:(NSString *)btnImageName bgPressImageName:(NSString *)bgPressImageName;
  48. - (id)initWithFrame:(CGRect)frame hasMoveButton:(BOOL)hasMooveButton disablePrev:(BOOL)disablePrev disableNext:(BOOL)disableNext;
  49. - (void)refreshAccessoryView;
  50. @end
  51. @interface CustomTextField2 : CustomTextField //circleTextfield
  52. @end
  53. @interface CustomSearchTextField : CustomTextField
  54. @end
  55. @interface CustomMenuTextFieldMenu : NSObject
  56. @property (assign, nonatomic) id target;
  57. @property (assign, nonatomic) SEL selector;
  58. @property (strong, nonatomic) NSString *menu;
  59. @end
  60. @interface CustomMenuTextField : CustomTextField
  61. @property (strong, nonatomic) NSArray *menuArray;
  62. @property (strong, nonatomic) NSArray *menuItems;
  63. @end
  64. @interface CustomButtonTextField : CustomMenuTextField
  65. @end