拇指指甲画廊?
你好奇我将如何去实现一个视图像(见下文)类似于用于iPhone照片应用程序。我最初的想法是每个单元格拥有4张图像的桌面视图,任何人都可以指向正确的方向。我在使用Apple的API时尤其感兴趣,所以在这个阶段不要太在意第三方的API /控制器。拇指指甲画廊?
是的,正如你所说,一表视图会的工作,与每4件事(/行)与一个的UIButton一个自定义图像。您必须确保表格行本身不可选。 (UITableView Setting some cells as "unselectable")如果要有很多行,请确保使用表视图单元格高速缓存。
实际的表格视图单元格可能是一个UITableViewCell子类或只是正常的,有一些子视图添加到它的contentView。
其实,阅读后我注意到你没有提到你想要的图像是“可打”的。如果你这样做,使用UIButtons,如果你不这样做,使用UIImage(你可以附加一个水龙头手势识别器,但这可能是矫枉过正) – 2010-09-01 19:54:13
不要重新发明轮子。苹果公司提供类来做这种事情。 – NSResponder 2010-09-01 22:26:41
在iOS上,这项工作主要为您完成。检查苹果的文档MPMediaPickerController
。
我看过文档,但似乎无法呈现自己的自定义图像(如果是,那么three20会实现它)(我不确定OP是否想要或者不使用自定义图像) – 2010-09-02 16:55:09
你需要使用UIScrollView和一大堆UIImageViews或UIButtons(图像作为背景图像)。此代码在滚动视图上使用按钮。另外你的wud需要一个函数来生成缩略图,除非你使用资产库,在这种情况下函数已经存在。
[scrollview setContentSize:CGSizeMake(320, (items*itemWidth)];
for (int i = 0; i < [items count]; i++) {
if (i % 4 == 0) {
y+=1;
x = 0;
}
UIButton *myButton = [UIButton buttonWithType:UIButtonTypeCustom];
[myButton setBackgroundImage:[UIImage imageWithCGImage:[items objectAtIndex:i]] forState:UIControlStateNormal];
CGRect rect2 = myButton.frame;
rect2.size.height = kScrollObjHeight2;
rect2.size.width = kScrollObjWidth2;
rect2.origin.y = 10 + (y * 70) + (y *5);
rect2.origin.x = 8 + (x * kScrollObjWidth2) + (x *8);
myButton.frame = rect2;
myButton.tag = i; // tag our images for later use when we place them in serial fashion
x = x + 1;
[myButton addTarget:self action:@selector(clickFunction:) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:myButton];
[scrollview addSubview:myButton];
}
};
[scrollview setBackgroundColor:[UIColor blackColor]];
[scrollview setCanCancelContentTouches:NO];
scrollview.indicatorStyle = UIScrollViewIndicatorStyleWhite;
scrollview.clipsToBounds = YES; // default is NO, we want to restrict drawing within our scrollview
scrollview.scrollEnabled = YES;
scrollview.pagingEnabled = YES;
通常这会是一个很好的答案,但是当他/她特别要求不是第三方解决方案或API ... – 2010-09-01 19:48:43
我读“不要太费心约在这个阶段第三方的API /控制器。”因为他不介意建议使用第三方API。但是对这个令人困惑的陈述的进一步分析表明你可能是正确的。 :P哦,可以帮助未来的其他人知道它存在。 – MarkPowell 2010-09-01 19:51:38