У меня есть сценарий, в котором я хочу сохранить «миниатюры» изображений в строке таблицы. Я решаю во время выполнения количество изображений, которые идут в строке.UItableView с несколькими изображениями и установкой onclick на каждом из них
Во-вторых, при щелчке любого изображения я хочу запустить viewcontroller с разработанным ими изображением с некоторым описанием.
Как я могу это достичь?
|________________|
| 1 2 3 4 5 6 |
|________________|
| 7 8 9 10 11 12 |
|________________|
| 12 14 15 |
|________________|
Представьте цифры выше в виде эскизов. Onclick любого числа, с которого я хочу запустить новый контроллер представления, который дает подробности об изображении.
фрагмент кода:
-(void) populateTableView
{
NSMutableArray* srcArray = [[NSMutableArray alloc] initWithArray:[[ImageDataSource sharedImageDataSource] getThumbnailsSrcArray]];
int noOfImages = srcArray.count;
float rowc = (noOfImages/ROW_ELEM_COUNT) + 0.5;
int rowCount = roundf(rowc);
titleData = [[NSMutableArray alloc]init];
int j=0;
for (int i=0; i<rowCount; i++) {
NSMutableArray* rowArray = [[NSMutableArray alloc] init];
for (int k=0; k < ROW_ELEM_COUNT; k++) {
if (j < noOfImages) {
NSString* imgPath = [srcArray objectAtIndex:j];
UIImage* img = [[UIImage alloc] initWithContentsOfFile:imgPath];
[rowArray addObject:img];
[img release];
imgPath=nil;
}
j++;
}
[titleData addObject:rowArray];
}
titleView = [[UITableView alloc] initWithFrame:CGRectMake(90.0,156.0,590.0,630.0)
style:UITableViewStyleGrouped];
titleView.delegate = self;
[self.view addSubview:titleView];
[titleView release];
}
Так в основном у меня есть массив массив как мой DS. индексом каждого массива будет строка таблицы, а внутри массива будут изображения. Но я не уверен, как заполнить таблицу. Какой-нибудь ключ?
У меня есть подкласс UITableViewCell или нет? Тип контента - это только изображение (или uibutton), поэтому должно быть хорошо, если мы создадим их в - (UITableViewCell *) tableView: (UITableView *) tableView cellForRowAtIndexPath: (NSIndexPath *) indexPath –
Да, вы можете легко добавить subviews в ячейку. contentView' в этом методе. – runmad