2013-04-20 17 views
1

的觸摸區域這是我的設置按鈕,導航欄限制的UIButton

UIButton *addEditButton = [UIButton buttonWithType:UIButtonTypeCustom]; 
    [addEditButton setImage:[UIImage imageNamed:@"edit.png"] forState:UIControlStateNormal]; 
    [addEditButton setFrame:CGRectMake(0, 0, 62, 31)]; used frame same as image 

    [addEditButton addTarget:self action:@selector(EditTable) forControlEvents:UIControlEventTouchUpInside]; 
    UIBarButtonItem *addEdit = [[UIBarButtonItem alloc] initWithCustomView:addEditButton]; 
    self.navigationItem.leftBarButtonItem =addEdit; 

一切完美,但按鈕是說我摸出來的側壓。如何解決這個問題有什麼辦法,因此得到按下只有當我觸摸它

這是圖像enter image description here

+0

將該圖像設置爲背景圖像,以便您可以看到該按鈕的實際框架。 – 2013-04-20 13:54:47

回答

1

蘋果設置了此事情的方式使用戶可以順暢瀏覽。建議不要在靠近navigationBarButton的位置放置按鈕。有一些辦法可以做到,但不好改變這種事情。它就像回覆消息和刪除消息這兩個按鈕彼此靠近

1

我相信,因爲你設置的圖像是吳丹實際尺寸更小,你有這個問題的按鈕。請讓按鈕尺寸更小或提供更大的圖像。

我希望這可以幫助你。

+0

我檢查圖像大小,然後我設置按鈕框架,他們都相同ashok – 2013-04-22 04:32:54

+0

Iam對不起,Iam不是很專家在這,我不知道如果你已經嘗試過這一點,但我會在這種情況下做的是,我會嘗試設置背景顏色的按鈕,這樣的按鈕界限將被提交,我可以確保給定的圖像適合按鈕內。你是否也嘗試過prakash? – Ashok 2013-04-22 05:34:06

+1

那好吧,我會告訴你,請試試這個代碼,[button setBackgroundColor:[UIColor redColor]];用你的按鈕名稱替換按鈕 – Ashok 2013-04-22 13:05:39

0

看起來它只是這樣工作,但我想出了一個解決方案。

一個是你可以隱藏你的導航欄,並確實使用工具欄。

其他是你可以添加其他按鈕之後,並將其啓用屬性設置爲FALSE。

我不知道這是否正確,但似乎至少滿足您的要求。

下面是代碼:

UIButton *addEditButton = [UIButton buttonWithType:UIButtonTypeCustom]; 
[addEditButton setFrame:CGRectMake(0, 0, 62, 31)]; 

[addEditButton setImage:[UIImage imageNamed:@"edit.png"] forState:UIControlStateNormal]; 

[addEditButton addTarget:self action:@selector(EditTable) forControlEvents:UIControlEventTouchUpInside]; 

UIButton *addEditButton1 = [UIButton buttonWithType:UIButtonTypeCustom]; 
[addEditButton1 setFrame:CGRectMake(63, 0, 30, 31)]; 

UIBarButtonItem *addEdit = [[UIBarButtonItem alloc] initWithCustomView:addEditButton]; 
UIBarButtonItem *addEdit1 = [[UIBarButtonItem alloc] initWithCustomView:addEditButton1]; 
addEdit1.enabled = FALSE; 


NSMutableArray *buttonArray=[[NSMutableArray alloc]initWithCapacity:2]; 
[buttonArray addObject:addEdit]; 
[buttonArray addObject:addEdit1]; 

self.navigationItem.leftBarButtonItems =buttonArray; 
+0

Hinata我不明白你爲什麼這樣做了所有,爲什麼做另一個不同的框架按鈕,並將它們添加到數組中,然後leftbarbuttoniteam請你解釋一下。我不知道 – 2013-04-22 09:48:10