размещение изображения на iphone с табличным видом

#objective-c #xcode

#objective-c #xcode

Вопрос:

У меня есть три строки, которые настроены программно. Я хочу разместить изображение только в первой строке табличного представления. Изображение должно занимать всю первую строку (по умолчанию не в левой части ячейки табличного представления)

Вот мой код:

 - (CGFloat)tableView:(UITableView *)aTableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
 {
switch (indexPath.row)
{
    case 1:

if(indexPath.row==1)
    {
    return 230.0; // first row is 123px high
    }
        default:
            return 100.0; // all other rows are 40px high 
    }
}
-(void)configureCell:(UITableViewCell *)cell atIndexPath:(NSIndexPath *)indexPath
{
    switch (indexPath.row) {

            case 0:
            break;      

        case 1:
            if (indexPath.row==1) {

                UIButton *button1=[UIButton buttonWithType:UIButtonTypeRoundedRect];
                [button1 setFrame:CGRectMake(5, 10, 310, 40)];
                [button1 setTitle:@"Give" forState:UIControlStateNormal];
                [button1 addTarget:self action:@selector(give)
                 forControlEvents:UIControlEventTouchUpInside];

                [button1.titleLabel setFont:[UIFont boldSystemFontOfSize:15]];
                [button1 setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];
                [cell.contentView addSubview:button1];



                UIButton *button2=[UIButton buttonWithType:UIButtonTypeRoundedRect];
                [button2 setFrame:CGRectMake(5, 60, 310, 40)];
                [button2 setTitle:@"YouTube" forState:UIControlStateNormal];
                [button2 addTarget:self action:@selector(Announcements)
                 forControlEvents:UIControlEventTouchUpInside];

                [button2.titleLabel setFont:[UIFont boldSystemFontOfSize:15]];
                [button2 setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];
                [cell.contentView addSubview:button2];


                UIButton *button3=[UIButton buttonWithType:UIButtonTypeRoundedRect];
                [button3 setFrame:CGRectMake(5, 110, 310, 40)];
                [button3 setTitle:@"Follow us on Twitter" forState:UIControlStateNormal];
                [button3 addTarget:self action:@selector(Twitter)
                 forControlEvents:UIControlEventTouchUpInside];

                [button3.titleLabel setFont:[UIFont boldSystemFontOfSize:15]];
                [button3 setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];
                [cell.contentView addSubview:button3];

                UIButton *button4=[UIButton buttonWithType:UIButtonTypeRoundedRect];
                [button4 setFrame:CGRectMake(5, 160, 310, 40)];
                [button4 setTitle:@"Follow us on FaceBook" forState:UIControlStateNormal];
                [button4 addTarget:self action:@selector(Facebook)
                 forControlEvents:UIControlEventTouchUpInside];

                [button4.titleLabel setFont:[UIFont boldSystemFontOfSize:15]];
                [button4 setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];

                [cell.contentView addSubview:button4];

                /*[button1 release];
                [button2 release];
                [button3 release];
                [button4 release];*/

            }
            break;
        default:
            break;
    }
    }
  

Ответ №1:

Вы можете добавить UIImageView в свой contentview.

Комментарии:

1. @saadnib: если я использую UIImageView, я получаю исключение ..code. NSString *imagefile=[[NSBundle mainBundle]pathForResource:@»guitar» OfType:@»jpg»]; UIImageView *li=[[Выделение UIImageView]initWithContentsOfFile:imagefile]; [cell.contentView добавляет SUBVIEW:li];

2. UIImageView *imgView = [[Выделение UIImageView] initWithFrame:CGRectMake(0.0f, 0.0f, 320.0f, 50.0f)]; [Изображение, установленное imgView: [UIImage imageNamed:@»guitar.jpg «]]; [cell.contentView добавляет SUBVIEW:imgView]; [Выпуск imgView];

3. @saadnib: спасибо, чувак … все работает нормально, но я получаю пиксели изображения broken…is любым способом

4. на самом деле пиксели вашего изображения повреждены, потому что изображение, которое у вас есть в вашем проекте, не такого размера, как кадр, который мы передаем в CGRectMake. Посмотрите на последние два параметра.