dominghao
2017-07-20 15:40
采纳率: 33.3%
浏览 1.1k
已采纳

iOS里面 ViewController对象里面为什么可以调用tabBarItem这个属性???

//接口文件
#import <UIKit/UIKit.h>

@interface BNRHypnosisViewController : UIViewController

@end

//实现文件
@implementation BNRHypnosisViewController
 - (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
    if (self) {

        // Set the tab bar item's title
        self.tabBarItem.title = @"Hypnotize";
        UIImage *image = [UIImage imageNamed:@"Hypno.png"];

        // Put that image on the tab bar item
        self.tabBarItem.image = image;
        NSLog(@"!!!%@",self);
    }

    return self;
}
@end

在UIViewController里面并没有UITabBarItem *tabBarItem 这个属性... 想知道self.tabBarItem是怎么回事???

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • 浅浅青丘 2017-07-21 01:00
    已采纳

    可以command进去看一下UIKit
    图片说明
    从这里可以看到UIViewController有一个UITabBarControllerItem的扩展类,然后在这个扩展类里有一个tabBarItem和tabBarController的成员变量,所以在UIViewController里面是可以调用self.tabBarItem的。

    打赏 评论
  • dominghao 2017-07-21 04:33

    ...你贴出来的是UITabBarController.h的内容, 但是UIViewController.h 并没有这个"分类".
    1.单独建立一个只有UIViewController的工程,你任然可以在代码里:调用self.tabBarItem.
    2.UITabBarController.h中的那是个分类吧,在分类中添加属性???它的实现我怎么找不到...

    打赏 评论

相关推荐 更多相似问题