Добавление imageViews к следующей строке табличного представления - PullRequest
1 голос
/ 22 июня 2011

в моем приложении у меня есть табличное представление, и я добавляю 4 изображения к первой строке моего табличного представления. Теперь я хочу добавить изображение к следующей строке. Как я могу сделать это в существующем коде, пожалуйста help.Я отправляю свою часть кода: -

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {

    UITableViewCell *cell = nil;
    static NSString *AutoCompleteRowIdentifier = @"AutoCompleteRowIdentifier";
    cell = [tableView dequeueReusableCellWithIdentifier:AutoCompleteRowIdentifier];

    if (cell == nil) {
        cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:AutoCompleteRowIdentifier] autorelease];

        UIImageView * imageView1 = [[[UIImageView alloc] initWithFrame:CGRectMake(25, 4, 80, 80)] autorelease];
        UIImageView * imageView2 = [[[UIImageView alloc] initWithFrame:CGRectMake(115,4,80, 80)] autorelease];
        UIImageView * imageView3 = [[[UIImageView alloc] initWithFrame:CGRectMake(205,4, 80, 80)] autorelease];
        UIImageView * imageView4 = [[[UIImageView alloc] initWithFrame:CGRectMake(295,4, 80, 80)] autorelease];
        UIImageView * imageView5 = [[[UIImageView alloc] initWithFrame:CGRectMake(25, 4, 80, 80)] autorelease];
        UIImageView * imageView6 = [[[UIImageView alloc] initWithFrame:CGRectMake(115,4,80, 80)] autorelease];

        int j=0;
        imageView1.tag = j;
        imageView2.tag = j+1;
        imageView3.tag = j+2;
        imageView4.tag = j+3;
        imageView5.tag = j+4;
        imageView6.tag = j+5;

        [cell.contentView addSubview:imageView1];
        [cell.contentView addSubview:imageView2];
        [cell.contentView addSubview:imageView3];
        [cell.contentView addSubview:imageView4];
        [cell.contentView addSubview:imageView5];
        [cell.contentView addSubview:imageView6];
}

for ( int i = 1; i <= j; i++ ) {
    imageView = (UIImageView *)[cell.contentView viewWithTag:i];
    imageView.image = nil;
}

int photosInRow;

if ( (indexPath.row < [tableView numberOfRowsInSection:indexPath.section] - 1) || ([sentence count] % 4 == 0) ) {
    photosInRow = 4;
} else {
    photosInRow = [sentence count] % 4;
}

for ( int i = 1; i <=[sentence count]; i++ ){
    imageView = (UIImageView *)[cell.contentView viewWithTag:i];
    [self setImage1:imageView];
}

    return cell;
}

Я хочу, чтобы mu imageView 5 и 6 находились в следующем ряду. Пожалуйста, помогите. Как это сделать? Я бьюсь головой об стену, ища это.

Спасибо, Christy

1 Ответ

1 голос
/ 22 июня 2011

вы можете попробовать что-то вроде ниже ... вы в основном проверяете номер текущей строки, затем строите нужную логику ...

UITableViewCell *cell = nil;
static NSString *AutoCompleteRowIdentifier = @"AutoCompleteRowIdentifier";
cell = [tableView dequeueReusableCellWithIdentifier:AutoCompleteRowIdentifier];
if (cell == nil) 
{
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:AutoCompleteRowIdentifier] autorelease];
}

int j=0; imageView1.tag = j;


if(0 == [indexPath row])
{
UIImageView * imageView1 = [[[UIImageView alloc] initWithFrame:CGRectMake(25, 4, 80, 80)] autorelease];

UIImageView * imageView2 = [[[UIImageView alloc] initWithFrame:CGRectMake(115,4,80, 80)] autorelease];

UIImageView * imageView3 = [[[UIImageView alloc] initWithFrame:CGRectMake(205,4, 80, 80)] autorelease];

UIImageView * imageView4 = [[[UIImageView alloc] initWithFrame:CGRectMake(295,4, 80, 80)] autorelease];


imageView2.tag = j+1;

imageView3.tag = j+2;

imageView4.tag = j+3;

    [cell.contentView addSubview:imageView1];

            [cell.contentView addSubview:imageView2];

            [cell.contentView addSubview:imageView3];

            [cell.contentView addSubview:imageView4];



}else if(0 == [indexPath row])
{
UIImageView * imageView5 = [[[UIImageView alloc] initWithFrame:CGRectMake(25, 4, 80, 80)] autorelease];

UIImageView * imageView6 = [[[UIImageView alloc] initWithFrame:CGRectMake(115,4,80, 80)] autorelease];


imageView5.tag = j+1;

imageView6.tag = j+2;



            [cell.contentView addSubview: imageView5];

            [cell.contentView addSubview:imageView6];


}

    for ( int i = 1; i <= j; i++ ) {
    imageView = (UIImageView *)[cell.contentView viewWithTag:i];

    imageView.image = nil;

}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...