selectCountryVC.m 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167
  1. //
  2. // selectCountryVC.h.m
  3. //
  4. // Created by flyeagleTang on 14-4-3.
  5. // Copyright (c) 2014年 Reese. All rights reserved.
  6. //
  7. #import "selectCountryVC.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 "selectProvinceVC.h"
  19. #define row_height 40
  20. @interface selectCountryVC ()
  21. @end
  22. @implementation selectCountryVC
  23. @synthesize showProvince;
  24. @synthesize selected;
  25. @synthesize delegate;
  26. @synthesize didSelect;
  27. @synthesize selValue;
  28. @synthesize showArea;
  29. - (id)init
  30. {
  31. self = [super init];
  32. if (self) {
  33. self.showProvince = YES;
  34. self.provinceId = 0;
  35. self.areaId = 0;
  36. self.cityId = 0;
  37. self.heightHeader = JX_SCREEN_TOP;
  38. self.heightFooter = 0;
  39. self.isGotoBack = YES;
  40. self.title = Localized(@"selectCountryVC_SelCountry");
  41. //self.view.frame = CGRectMake(0, 0, JX_SCREEN_WIDTH, JX_SCREEN_HEIGHT);
  42. [self createHeadAndFoot];
  43. self.isShowFooterPull = NO;
  44. self.isShowHeaderPull = NO;
  45. _table.backgroundColor = [UIColor whiteColor];
  46. }
  47. return self;
  48. }
  49. -(void)dealloc{
  50. self.selValue = nil;
  51. [_array removeAllObjects];
  52. // [_array release];
  53. // [super dealloc];
  54. }
  55. - (void)viewDidLoad
  56. {
  57. [super viewDidLoad];
  58. }
  59. - (void)viewWillAppear:(BOOL)animated
  60. {
  61. [super viewWillAppear:animated];
  62. }
  63. - (void)didReceiveMemoryWarning
  64. {
  65. [super didReceiveMemoryWarning];
  66. // Dispose of any resources that can be recreated.
  67. }
  68. #pragma mark ---------tableView协议----------------
  69. -(NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
  70. {
  71. return 1;
  72. }
  73. -(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
  74. {
  75. return [g_constant.country_name count];
  76. }
  77. - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
  78. {
  79. UITableViewCell *cell=nil;
  80. NSString* cellName = [NSString stringWithFormat:@"msg_%d_%ld",_refreshCount,indexPath.row];
  81. cell = [tableView dequeueReusableCellWithIdentifier:cellName];
  82. if(cell==nil){
  83. cell = [UITableViewCell alloc];
  84. [_table addToPool:cell];
  85. cell = [cell initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellName];
  86. cell.selectionStyle = UITableViewCellSelectionStyleGray;
  87. UILabel* p = [[UILabel alloc]initWithFrame:CGRectMake(20, 0, 300, row_height)];
  88. NSString* s;
  89. s = [g_constant.country_name objectAtIndex:indexPath.row];
  90. p.text = s;
  91. p.font = g_factory.font16;
  92. [cell addSubview:p];
  93. // [p release];
  94. UIView* line = [[UIView alloc] initWithFrame:CGRectMake(18,row_height-LINE_WH,JX_SCREEN_WIDTH-18-20,LINE_WH)];
  95. line.backgroundColor = THE_LINE_COLOR;
  96. [cell addSubview:line];
  97. // [line release];
  98. UIImageView* iv = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"more_flag"]];
  99. iv.frame = CGRectMake(JX_SCREEN_WIDTH-20, (row_height-13)/2, 7, 13);
  100. [cell addSubview:iv];
  101. // [iv release];
  102. }
  103. return cell;
  104. }
  105. -(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
  106. {
  107. self.selValue = [g_constant.country_name objectAtIndex:indexPath.row];
  108. self.selected = [[g_constant.country_value objectAtIndex:indexPath.row] intValue];
  109. if(self.showProvince){
  110. selectProvinceVC* vc = [selectProvinceVC alloc];
  111. vc.parentName = self.selValue;
  112. vc.parentId = self.selected;
  113. vc.didSelect = @selector(doSelect:);
  114. vc.showCity = YES;
  115. vc.showArea = YES;
  116. vc.delegate = self;
  117. vc = [vc init];
  118. // [g_window addSubview:vc.view];
  119. [g_navigation pushViewController:vc animated:YES];
  120. return;
  121. }
  122. if (delegate && [delegate respondsToSelector:didSelect])
  123. // [delegate performSelector:didSelect withObject:self];
  124. [delegate performSelectorOnMainThread:didSelect withObject:self waitUntilDone:NO];
  125. [self actionQuit];
  126. }
  127. -(void)doSelect:(selectProvinceVC*)sender{
  128. if(sender.selected==sender.parentId)
  129. self.selValue = sender.selValue;
  130. else
  131. self.selValue = [NSString stringWithFormat:@"%@.%@",self.selValue,sender.selValue];
  132. self.provinceId = sender.parentId;
  133. self.cityId = sender.cityId;
  134. self.areaId = sender.areaId;
  135. self.selected = sender.selected;
  136. if (delegate && [delegate respondsToSelector:didSelect])
  137. // [delegate performSelector:didSelect withObject:self];
  138. [delegate performSelectorOnMainThread:didSelect withObject:self waitUntilDone:NO];
  139. [self actionQuit];
  140. }
  141. -(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
  142. {
  143. return row_height;
  144. }
  145. @end