XHViewState.m 989 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. //
  2. // XHViewState.m
  3. // XHImageViewer
  4. //
  5. // Created by 曾 宪华 on 14-2-17.
  6. // Copyright (c) 2014年 曾宪华 开发团队(http://iyilunba.com ) 本人QQ:543413507 本人QQ群(142557668). All rights reserved.
  7. //
  8. #import "XHViewState.h"
  9. @implementation XHViewState
  10. @synthesize transform;
  11. + (XHViewState *)viewStateForView:(UIView *)view {
  12. static NSMutableDictionary *dict = nil;
  13. if(dict == nil) {
  14. dict = [NSMutableDictionary dictionary];
  15. }
  16. XHViewState *state = dict[@(view.hash)];
  17. if(state == nil) {
  18. state = [[self alloc] init];
  19. dict[@(view.hash)] = state;
  20. }
  21. return state;
  22. }
  23. - (void)setStateWithView:(UIView *)view {
  24. CGAffineTransform trans = view.transform;
  25. view.transform = CGAffineTransformIdentity;
  26. self.superview = view.superview;
  27. self.frame = view.frame;
  28. self.transform = trans;
  29. self.userInteratctionEnabled = view.userInteractionEnabled;
  30. view.transform = trans;
  31. }
  32. @end