2010-11-28 54 views
1

加入TTLauncherItem到TTLauncherView後,我想改變爲增加TTLauncherItem問題Three20的:如何刷新TTLauncherItem /改變形象

像但當我改變了形象的價值,它不工作。視圖沒有變化。

我怎麼能刷新圖像TTLauncherItem立刻?

得益於先進~~~~

init方法是,

for (int i = 0; i < pages; i++) { 

    NSMutableArray* pageArray = [NSMutableArray array]; 
    for (int j = 0; j<pageCount && (j+i*pageCount)<[titleArray count]; j++) { 

     [pageArray addObject:[[[TTLauncherItem alloc] initWithTitle:[titleArray objectAtIndex:(j+i*pageCount)] 
                   image:@"bundle://Icon.png" 
                   URL:@"tt://setUp" 
                  canDelete:NO] autorelease]]; 
    } 
    [pagesArray addObject:pageArray]; 
} 

_launcherView.pages = [NSArray arrayWithArray:pagesArray]; 

[self.view addSubview:_launcherView]; 

/////////以下線路改變。

TTLauncherItem *testItem = [[pagesArray objectAtIndex:0] objectAtIndex:0]; 
testItem.image = @"bundle://defaultMusic2.png"; 

/////////////

,但如果我動議另一方法,如我ImageDidLoad,然後拿到TTLauncherItem對象,改變這個形象,它不工作在所有... 或本:

- (void)launcherView:(TTLauncherView*)launcher didSelectItem:(TTLauncherItem*)item { 
TTLauncherItem *testItem = [[_launcherView.pages objectAtIndex:0] objectAtIndex:4]; 
testItem.image = @"bundle://defaultMusic2.png"; 

}

回答

0

不知道這是否適合您的需要(誠然是不是最漂亮的解決方案),但你可以刪除舊TTLaunche使用新視圖重新創建啓動器視圖。

0

只是解決它。

首先保存頁面,然後進行修改,然後恢復。

NSArray *pages = [_launcherView.pages copy]; 

    // here to amend the items 
    // something like item.xxx=xxx; 
    [_launcherView setPages:pages]; 
    [pages release]; 

祝你好運!