0

3列ごとに2行のテーブルと、5つの値を持つ配列があります。これらの値は、3つの列に連続して表示する必要があります。

indexPath.row 0: Array[0] | Array[1] | Array[2]
indexPath.row 1: Array[3] | Array[4] | 

値を配置するコーディングを作成したい(たとえば、5、6、7、...、20、21、行の3列の形式で)行は次のサイズで計算されます値を持つ配列。

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{    
    NSMutableArray *values = [... getValues];
    int no=0;
    if (values) {
        no=(values.count+1)/3;
    }
    else{
        no=0;
    }
    return no;
}

私の現在の問題は、列に分散された5つの値を取得できないことです。私は計算に苦労しています、これらは配列のインデックスに適合しません...

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
//order values in 3 columns and 2 rows (currently)...
}

BR、mybecks

4

2 に答える 2

0

COLSが列の数であり、Vが値の数であると仮定します。ここで、Mは行列であり、Vectorは値のベクトルです。

for i = 0 to V-1:
    M[i div COLS][i mod COLS] = Vector[i]
于 2012-08-27T16:01:47.363 に答える
0

解決策を見つけました。

NSInteger count = numberOfValues;
NSInteger start = indexPath.row * 3;
NSInteger end = MIN(start + 3, count);

for(int i = start; i < end; i++)
{
  if(i%3 == 0){//left}
  if(i%3 == 1){//center}
  if(i%3 == 2){//right}
}
于 2012-08-30T09:19:43.173 に答える