Iphone 如何创建(alloc/initwithImage)UIBarButtonim?

Iphone 如何创建(alloc/initwithImage)UIBarButtonim?,iphone,objective-c,Iphone,Objective C,这是使用图像分配和初始化UIBarButton项的正确方法吗 UIBarButtonItem *barBtn = [[UIBarButtonItem alloc]initWithImage:@"back_topbtn.png" style:UIBarButtonItemStyleDone target:nil action:nil]; 不,这不是正确的方式,您没有使用图像对象,而是将图像名称放在这里。因此,这向您显示了一个警告 UIBarButtonItem *barBtn = [[[UIBa

这是使用图像分配和初始化UIBarButton项的正确方法吗

UIBarButtonItem *barBtn = [[UIBarButtonItem alloc]initWithImage:@"back_topbtn.png" style:UIBarButtonItemStyleDone target:nil action:nil];

不,这不是正确的方式,您没有使用图像对象,而是将图像名称放在这里。因此,这向您显示了一个警告

UIBarButtonItem *barBtn = [[[UIBarButtonItem alloc]initWithImage:[UIImage imageNamed:@"back_topbtn.png"] style:UIBarButtonItemStyleDone target:nil action:nil] autorelease];

这是使用它的正确方法,而且当您不声明任何操作时,这只不过是一个图像。因此,请声明任何操作(使用选择器)。

否这不是正确的方法,您没有使用图像对象,而是将图像名称放在此处。因此,这会向您显示一条警告

UIBarButtonItem *barBtn = [[[UIBarButtonItem alloc]initWithImage:[UIImage imageNamed:@"back_topbtn.png"] style:UIBarButtonItemStyleDone target:nil action:nil] autorelease];

这是使用它的正确方法,而且当您不声明任何操作时,这只不过是一个图像。因此,声明任何操作(使用选择器)。

正确的方法是使用UIImage。在
-initWithNibName:bundle:
方法中这样做是有意义的

下面是在右侧添加图像按钮的示例。请注意,
myButtonTapped:
将在点击按钮时被调用,请确保实现它

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil {
    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
    if (self) {
        self.title = @"My title";

        UIBarButtonItem *myButton = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"myimage.png"] style:UIBarButtonItemStylePlain target:self action:@selector(myButtonTapped:)];
        self.navigationItem.rightBarButtonItem = myButton;
        [myButton release];
    }
    return self;
}

正确的方法是使用UIImage。在
-initWithNibName:bundle:
方法中这样做是有意义的

下面是在右侧添加图像按钮的示例。请注意,
myButtonTapped:
将在点击按钮时被调用,请确保实现它

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil {
    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
    if (self) {
        self.title = @"My title";

        UIBarButtonItem *myButton = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"myimage.png"] style:UIBarButtonItemStylePlain target:self action:@selector(myButtonTapped:)];
        self.navigationItem.rightBarButtonItem = myButton;
        [myButton release];
    }
    return self;
}

想对了。但你为什么不采取行动呢。如果不采取行动,你会用按钮做什么?正确思考。但你为什么不采取行动呢。如果不采取行动,你会用按钮做什么?