首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用TTLauncherView启动基于TTTableView的视图?

如何使用TTLauncherView启动基于TTTableView的视图?
EN

Stack Overflow用户
提问于 2010-10-14 22:15:29
回答 1查看 787关注 0票数 1

我是Three20的新手。我正在尝试制作一个基于TTLauncherView的界面,但目前还没有成功。

我的LauncherView包含一个按钮,映射到一个网址。当我点击这个按钮时,我想要一个基于TTTableView的显示在屏幕上。但我什么都没有。

下面是我的一段AppDelegate代码:

代码语言:javascript
复制
[map from:@"tt://rank" toViewController:[RankController class]];

以及LauncherView代码(也是一部分):

代码语言:javascript
复制
launcherView.pages = [NSArray arrayWithObjects:
                      [NSArray arrayWithObjects:
                       [[[TTLauncherItem alloc]    
                         initWithTitle:@"Rank"
                         image:@"bundle://defaultMusic.png"
                         URL:@"tt://rank"
                         canDelete:YES] autorelease],nil], nil];

按钮在这里,没问题。但当单击时,它永远不会打开我的RankController类。这是它的来源:

代码语言:javascript
复制
    - (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
    {
        if (self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil])
        {
            self.title = @"Rank";
            self.variableHeightRows = YES;
        }

        return self;
    }

- (void)dealloc
{
    [super dealloc];
}

- (void) createModel
{
    NSLog(@"rank");
    self.dataSource = [TTSectionedDataSource dataSourceWithObjects:
                       @"Items",
                       [TTTableTextItem itemWithText:@"Item n°1" URL:nil],
                       [TTTableTextItem itemWithText:@"Item n°2" URL:nil],
                       [TTTableTextItem itemWithText:@"Item n°3" URL:nil],
                       [TTTableTextItem itemWithText:@"Item n°4" URL:nil],
                       [TTTableTextItem itemWithText:@"Item n°5" URL:nil],
                       nil];

}

我尝试按照Three20中打包的示例进行操作,那么我做错了什么呢?

提前感谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-10-14 22:31:29

您需要实现TTLauncherViewDelegate。在.h文件中,声明视图控制器以实现TTLauncherViewDelegate:

代码语言:javascript
复制
@interface SFLauncherViewController : TTViewController <TTLauncherViewDelegate>

然后在.m文件中,实现这个方法:

代码语言:javascript
复制
- (void)launcherView:(TTLauncherView *)launcher didSelectItem:(TTLauncherItem *)item{
    NSLog(@"did select item: %@", [item URL]);
    TTNavigator *navigator = [TTNavigator navigator];

    TTURLAction *action = [[TTURLAction actionWithURLPath:[item URL]] applyAnimated:YES];

    [navigator openURLAction:action];
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3934075

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档