selectAreaVC.m 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147
  1. //
  2. // selectAreaVC.h.m
  3. //
  4. // Created by flyeagleTang on 14-4-3.
  5. // Copyright (c) 2014年 Reese. All rights reserved.
  6. //
  7. #import "selectAreaVC.h"
  8. #import "JXChatViewController.h"
  9. #import "AppDelegate.h"
  10. #import "JXLabel.h"
  11. #import "JXImageView.h"
  12. //#import "JXCell.h"
  13. #import "JXRoomPool.h"
  14. #import "JXTableView.h"
  15. #import "JXNewFriendViewController.h"
  16. #import "menuImageView.h"
  17. #import "JXConstant.h"
  18. #import "selectAreaVC.h"
  19. #define row_height 40
  20. @interface selectAreaVC ()
  21. @end
  22. @implementation selectAreaVC
  23. @synthesize parentId,parentName;
  24. @synthesize selected;
  25. @synthesize delegate;
  26. @synthesize didSelect;
  27. @synthesize selValue;
  28. - (id)init
  29. {
  30. self = [super init];
  31. if (self) {
  32. self.heightHeader = JX_SCREEN_TOP;
  33. self.heightFooter = 0;
  34. self.isGotoBack = YES;
  35. self.title = self.parentName;
  36. //self.view.frame = CGRectMake(0, 0, JX_SCREEN_WIDTH, JX_SCREEN_HEIGHT);
  37. [self createHeadAndFoot];
  38. self.isShowFooterPull = NO;
  39. self.isShowHeaderPull = NO;
  40. _table.backgroundColor = [UIColor whiteColor];
  41. _selMenu = 0;
  42. _array = [g_constant getArea:parentId];
  43. _keys = [_array allKeys];
  44. _keys = [_keys sortedArrayUsingSelector:@selector(compare:)];
  45. // [_keys retain];
  46. }
  47. return self;
  48. }
  49. - (void)dealloc {
  50. self.parentName = nil;
  51. self.selValue = nil;
  52. // [_keys release];
  53. // [_array release];
  54. // [super dealloc];
  55. }
  56. - (void)viewDidLoad
  57. {
  58. [super viewDidLoad];
  59. }
  60. - (void)viewWillAppear:(BOOL)animated
  61. {
  62. [super viewWillAppear:animated];
  63. }
  64. - (void)didReceiveMemoryWarning
  65. {
  66. [super didReceiveMemoryWarning];
  67. // Dispose of any resources that can be recreated.
  68. }
  69. #pragma mark ---------tableView协议----------------
  70. -(NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
  71. {
  72. return 1;
  73. }
  74. -(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
  75. {
  76. return [_array count]+1;
  77. }
  78. - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
  79. {
  80. UITableViewCell *cell=nil;
  81. NSString* cellName = [NSString stringWithFormat:@"msg_%d_%ld",_refreshCount,indexPath.row];
  82. cell = [tableView dequeueReusableCellWithIdentifier:cellName];
  83. if(cell==nil){
  84. cell = [UITableViewCell alloc];
  85. [_table addToPool:cell];
  86. cell = [cell initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellName];
  87. UILabel* p = [[UILabel alloc]initWithFrame:CGRectMake(20, 0, 300, row_height)];
  88. if(indexPath.row==0)
  89. p.text = parentName;
  90. else
  91. p.text = [_array objectForKey:[_keys objectAtIndex:indexPath.row-1]];
  92. p.font = g_factory.font15;
  93. [cell addSubview:p];
  94. // [p release];
  95. UIView* line = [[UIView alloc] initWithFrame:CGRectMake(18,row_height-LINE_WH,JX_SCREEN_WIDTH-18-20,LINE_WH)];
  96. line.backgroundColor = THE_LINE_COLOR;
  97. [cell addSubview:line];
  98. // [line release];
  99. if(indexPath.row>0){
  100. UIImageView* iv = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"more_flag"]];
  101. iv.frame = CGRectMake(JX_SCREEN_WIDTH-20, (row_height-13)/2, 7, 13);
  102. [cell addSubview:iv];
  103. // [iv release];
  104. }
  105. }
  106. return cell;
  107. }
  108. -(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
  109. {
  110. self.selValue = self.parentName;
  111. self.selected = self.parentId;
  112. if(indexPath.row>0){
  113. self.selValue = [_array objectForKey:[_keys objectAtIndex:indexPath.row-1]];
  114. self.selected = [[_keys objectAtIndex:indexPath.row-1] intValue];
  115. }
  116. if (delegate && [delegate respondsToSelector:didSelect])
  117. // [delegate performSelector:didSelect withObject:self];
  118. [delegate performSelectorOnMainThread:didSelect withObject:self waitUntilDone:NO];
  119. [self actionQuit];
  120. }
  121. -(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
  122. {
  123. return row_height;
  124. }
  125. @end