0

だからここに私が起こって欲しいものがあります。多くのタブ バー アイテムがあり、「共有」という特定のアイテムが 1 つあります。ユーザーがそれをタップすると、アイテムをクリックしてそのアイテムのページの内容を確認する代わりに、共有画面がポップアップするはずです。

簡単にするために、タブバーのアイコンを押したときにアクションが呼び出されるようにします。だから私はこれを調べて、このデリゲートを見つけました:

- (void)tabBar:(UITabBar *)tabBar didSelectItem:(UITabBarItem *)item

このデリゲート内で、NSLog(@"Something") のように何かを実行したいのですが、このデリゲートは呼び出されません。デリゲートを .h に設定し、このコードを TableViewController .m と DisplayViewController.m に入れました

両方の .h にデリゲートが設定されています。呼び出されない理由はわかりませんが、とにかく解釈のためにコードをここに置きます。

- (void)tabBar:(UITabBar *)tabBar didSelectItem:(UITabBarItem *)item
{
    if(item.tag == 5)
    {

   NSLog(@"Something");

    }
}

そして私の.hで:

@interface PhotosTableViewController : UITableViewController <UITabBarControllerDelegate, UITabBarDelegate>
4

1 に答える 1

1

両方の .h にデリゲートが設定されています。

電話 yourTabBar.delegate = self;

TableViewController .mまたはDisplayViewController.m viewDidLoadメソッドで。

于 2013-03-14T23:58:58.137 に答える