2011-12-12 105 views
0

我有一个自定义的UIToolBar,左边是一个按钮(图片),右边是文本。当我点击按钮时,只有用于该按钮的图像是可点击的,而不是工具栏的整个左侧部分。我是否需要有覆盖整个部分的图像才能制作整个部分tappale?或者有什么方法可以让UIToolBar提供整个项目?点击UIToolBar中的按钮

下面是在我的自定义类的子类UIToolBar这些项目添加代码:

[self setItems:[NSArray arrayWithObjects:AddBarButton, FlexibleSpaceBarButton, TextBarItem, nil]]; 

enter image description here

+0

你是如何创建按钮?最有可能的是,你将不得不创建一个覆盖整个部分的图像。 – gurooj

回答

0

当你添加一个按钮......只有按钮是自来水能。做你想做什么,你可以一个手势识别器添加到视图和应对水龙头那样:

UITapGestureRecognizer *gr; 
    gr = [[UITapGestureRecognizer alloc] 
      initWithTarget:self action:@selector(tapGesture:)]; 
    [yourView addGestureRecognizer:gr]; 
    [gr release]; 

当然,如果您有包含您的按钮“子视图”这只会工作。

+0

这可能会干扰按钮的操作吗?似乎没有必要模仿UIButton的效果,而不是仅仅为按钮制作更大的图像。除非更大的图像扭曲了视野。 – gurooj

+0

我会添加手势识别器而不是按钮。只需添加一个子视图UIImageView来显示按钮的图像。我能想到的唯一真正的缺点是,当您单击并按住按钮时,您将看不到按钮更改状态。 – Ron