0

私はIOS開発に不慣れです。テーブルビューコントローラーに何かを表示したい場所で立ち往生しています。最初の行には「All Fences」という名前があり、その下の残りの行には、他のすべての名前を含む配列があります。

これが私がやっていることです:

-(void) viewDidLoad{
[super viewDidLoad];
array=[[NSMutableArray alloc] init];
[array addObject:@"All Fences"];
[self fetchOtherArray];
}
-(void) fetchOtherArray{
// I have array2 here
}

すべてを表示する方法を教えてください。

ありがとう

4

2 に答える 2

0

array2をarray1にマージできませんか?または、一時的な配列を取得し、arra1とarra2をマージして、単一の配列から値を取得しやすくし、単一の配列のdidselectrowatindexpathでアクションを実行できるようにします。

あなたがアイデアを持つことができるようにこれを見てください。

NSMutableArray *arr1 = [[NSMutableArray alloc] init];
[arr1 addObject:@"first"];                             // your first array
NSMutableArray *arr2 = [[NSMutableArray alloc] init];
[arr2 addObject:@"second"];                            // your second array

 [arr1 addObject:[arr2 objectAtIndex:0]];
 NSLog(@"arr1 >> %@",arr1);

// mediator array
NSMutableArray *arr_temp = [[NSMutableArray alloc]initWithObjects:[arr1 objectAtIndex:0],[arr2 objectAtIndex:0] ,nil];
NSLog(@"arr_temp >>%@",arr_temp);

両方の配列値を一時配列に格納するように要求しています。後で再利用するためにarray1を変更したくない場合は、コードで確認できる2番目の方法と同様です。

于 2012-09-27T06:23:34.193 に答える
0

配列に文字列が 1 つあり、ヘッダー ファイルで array2 を定義している場合は、次のようにします。

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section 
{        
     return  [array2 count]+1;
}

cellForRowAtIndexPath 内でこのチェックを使用します。

if(indexPath.row=0){
 // set name "All Fences"
  cell.textLabel.text=[NSString stringWithFormat:@"%@",[array objectAtIndex:indexPath.row]];
}
else{
  // set from another array
   cell.textLabel.text=[NSString stringWithFormat:@"%@",[array2 objectAtIndex:indexPath.row-1]];
}
于 2012-09-27T06:05:15.813 に答える