我设置AQGridView
以显示文档目录中的文件以及在启动时预定义并加载到表中的其他4个文档。我需要知道如何设置单元格来保存文档的URL(是的,甚至是预定义的文件!毕竟它们都只是NSStrings
。)所以稍后可以用
- (void)gridView:(AQGridView *)gridView didSelectItemAtIndex:(NSUInteger)index {
NSString *fileURL = [self._icons objectAtIndex:index];
// do stuff
}
并使用自定义-(id)init
方法加载到新视图中。现在,NSLog
文档目录对象单元格在日志中返回(NULL)
和SIGABRT
。
可根据要求提供代码。
编辑工作代码:
//.h
NSMutableArray *_documentIconsURLs;
//.m
//viewDidLoad
// array for internal and external document URLs
self._documentIconsURLs = [NSMutableArray array];
_documentIconsURLs = [[NSMutableArray alloc] initWithObjects:@"Musette.pdf",
@"Minore.pdf",
@"Cantata.pdf",
@"Finalé.pdf",
@"divine-comedy-inferno.pdf", nil];
//didSelectObject
- (void) gridView:(AQGridView *)gridView didSelectItemAtIndex:(NSUInteger)index {
NSLog (@"Selected theArgument=%d\n", index);
UIViewController *viewController = [[[UIViewController alloc]init]autorelease];
{
//if file is built-in, read from the bundle
if (index <= 4)
{
// first section is our build-in documents
NSString *fileURLs = [_documentIconsURLs objectAtIndex:index];
NSLog(@"%@", fileURLs);
viewController = [[[viewController alloc]initWithContentURL:fileURLs]autorelease];
}
答案 0 :(得分:1)
查看AQGridView附带的Springboard示例代码。
使用我放置here的代码交换SpringBoardIconCell和SpringBoardViewController的代码。
基本上只需将一个UILabel添加到SpringBoardIconCell,将其添加到View层次结构中,并从dataSource中设置gridView:cellForItemAtIndex:
中的文本。
最后:
-(void)gridView:(AQGridView *)gridView didDeselectItemAtIndex:(NSUInteger)index
{
NSString *fileName = [self.fileNames objectAtIndex:index];
//do stuff
}