1

我有一個典型的UINavigationController方案,但我有很多很多的意見,這可能意味着你可以結束了相互堆疊的相當多的意見。我想提供一個主頁按鈕,原本我將把它放在導航欄的右側;然而,我有一個搜索欄和另一個按鈕,所以我希望把它放在後退按鈕旁邊。需要2個UIBarButtonItems後退按鈕位於

在ASCII藝術:

< Back | |Home|    Title    |Browse| [Search Bar] 

現在我試着用下面設置一個視圖控制器的backButtonItem:

 UIToolbar* toolbar = [[UIToolbar alloc] 
          initWithFrame:CGRectMake(0, 0, 100, 45)]; 
    [toolbar setBarStyle: UIBarStyleBlackOpaque]; 

    // create an array for the buttons 
    NSMutableArray* buttons = [[NSMutableArray alloc] initWithCapacity:3]; 

    UIBarButtonItem *back = [[UIBarButtonItem alloc] init]; 
    back.title = @"Back"; 

    // create a standard save button 
    [buttons addObject:back]; 
    [back release]; 

    // create a spacer between the buttons 
    UIBarButtonItem *spacer = [[UIBarButtonItem alloc] 
           initWithBarButtonSystemItem:UIBarButtonSystemItemFixedSpace 
           target:nil 
           action:nil]; 
    [buttons addObject:spacer]; 
    [spacer release]; 

    UIBarButtonItem *homeButton = [[UIBarButtonItem alloc] 
            initWithImage:[UIImage imageNamed:@"home32.png"] 
            style:UIBarButtonItemStylePlain 
            target:self 
            action:@selector(onHomeButton:)]; 
    homeButton.style = UIBarButtonItemStyleBordered; 
    [buttons addObject:homeButton]; 
    [homeButton release]; 

    // put the buttons in the toolbar and release them 
    [toolbar setItems:buttons animated:NO]; 
    [buttons release]; 

    // place the toolbar into the navigation bar 
    self.navigationItem.backBarButtonItem = [[UIBarButtonItem alloc] 
              initWithCustomView:toolbar]; 
    [toolbar release]; 

但這似乎並沒有取代標準的後退按鈕。如果我只嘗試一個UIBarButtonItem並設置backButton,那就行得通了。

現在我嘗試的另一種方法是,在堆棧上推送的視圖中,設置leftBarButtonItem,但我似乎無法找到一種方法來創建左側具有尖形狀的後退按鈕。

有什麼建議嗎?

回答

0

可以嘗試

self.navigationItem.leftBarButtonItem=[[UIBarButtonItem alloc] 
              initWithCustomView:toolbar]; 

好運

+0

這似乎是正確的修補程序。將backBarButtonItem設置爲與UIBarButtonItem(不是UIView子類)不同的UIView子類。 – Dad 2011-04-08 05:07:17

+0

我只是試過,沒有去。我得到的按鈕,但不是與尖尖的形狀的後面一個。 – pfs 2011-04-10 19:58:00

+0

你可以把圖像放在你的新按鈕上,就像指點一個一樣。祝你好運 – 2011-04-11 04:32:10