UISearchBar+AppLocale.m 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. //
  2. // UISearchBar+AppLocale.m
  3. // Pods
  4. //
  5. // Created by Yeung Yiu Hung on 20/2/2016.
  6. //
  7. //
  8. #import <objc/runtime.h>
  9. #import "UISearchBar+AppLocale.h"
  10. static void * LocalizedSearchBarPlaceHolderPropertyKey = &LocalizedSearchBarPlaceHolderPropertyKey;
  11. static void * LocalizedSearchBarPromptPropertyKey = &LocalizedSearchBarPromptPropertyKey;
  12. @implementation UISearchBar (AppLocale)
  13. - (NSString *)localizedPlaceHolderKey {
  14. return objc_getAssociatedObject(self, LocalizedSearchBarPlaceHolderPropertyKey);
  15. }
  16. - (void)setLocalizedPlaceHolderKey:(NSString *)key {
  17. objc_setAssociatedObject(self, LocalizedSearchBarPlaceHolderPropertyKey, key, OBJC_ASSOCIATION_RETAIN_NONATOMIC);
  18. }
  19. - (NSString *)localizedPromptKey {
  20. return objc_getAssociatedObject(self, LocalizedSearchBarPromptPropertyKey);
  21. }
  22. - (void)setLocalizedPromptKey:(NSString *)key {
  23. objc_setAssociatedObject(self, LocalizedSearchBarPromptPropertyKey, key, OBJC_ASSOCIATION_RETAIN_NONATOMIC);
  24. }
  25. - (void)setLocalizedString{
  26. // if ([self respondsToSelector:@selector(localizedKey)] && self.localizedKey.length != 0) {
  27. // self.text = AMLocalizedString(self.localizedKey, nil);
  28. // }
  29. //
  30. // if ([self respondsToSelector:@selector(localizedPlaceHolderKey)] && self.localizedPlaceHolderKey.length != 0) {
  31. // self.placeholder = AMLocalizedString(self.localizedPlaceHolderKey, nil);
  32. // }
  33. //
  34. // if ([self respondsToSelector:@selector(localizedPromptKey)] && self.localizedPromptKey.length != 0) {
  35. // self.prompt = AMLocalizedString(self.localizedPromptKey, nil);
  36. // }
  37. self.text = ASLocalizedString(self.text);
  38. self.placeholder = ASLocalizedString(self.placeholder);
  39. self.prompt = ASLocalizedString(self.prompt);
  40. [LocalizationSystem checkXibString:self.placeholder];
  41. [LocalizationSystem checkXibString:self.prompt];
  42. }
  43. @end