iOS:navigationItem自訂時無法緊貼左側

來源:互聯網
上載者:User

標籤:uibutton   navigationitem   ios   

解決demo

<p class="p1"><span class="s1">UIButton</span><span class="s2"> *btn = [[UIButton alloc] initWithFrame:CGRectMake(</span><span class="s3">0</span><span class="s2">, </span><span class="s3">0</span><span class="s2">, BUTTON_WIDTH, BUTTON_HEIGHT)];</span></p><p class="p2"><span class="s4">    </span><span class="s2">//</span><span class="s5">添加點擊事件</span></p><p class="p3"><span class="s4">    [btn </span><span class="s2">addTarget</span><span class="s4">:</span><span class="s6">self</span><span class="s4"> </span><span class="s2">action</span><span class="s4">:</span><span class="s6">@selector</span><span class="s4">(buttonClickAction:) </span><span class="s2">forControlEvents</span><span class="s4">:</span><span class="s2">UIControlEventTouchUpInside</span><span class="s4">];</span></p><p class="p2"><span class="s4">    </span><span class="s2">//</span><span class="s5">設定圖片</span></p><p class="p3"><span class="s4">    [btn </span><span class="s2">setImage</span><span class="s4">:[</span><span class="s1">UIImage</span><span class="s4"> </span><span class="s2">imageNamed</span><span class="s4">:</span><span class="s7">@"naviationbar_button_normal.png"</span><span class="s4"> ] </span><span class="s2">forState</span><span class="s4">:</span><span class="s2">UIControlStateNormal</span><span class="s4">];</span></p><p class="p3"><span class="s4">    [btn </span><span class="s2">setImage</span><span class="s4">:[</span><span class="s1">UIImage</span><span class="s4"> </span><span class="s2">imageNamed</span><span class="s4">:</span><span class="s7">@"naviationbar_button_pressed.png"</span><span class="s4"> ] </span><span class="s2">forState</span><span class="s4">:</span><span class="s2">UIControlStateHighlighted</span><span class="s4">];</span></p><p class="p2"><span class="s4">    </span><span class="s2">//</span><span class="s5">設定</span><span class="s2">UIEdgeInsetsMake</span><span class="s5">(關鍵點)</span></p><p class="p1"><span class="s2">    btn.</span><span class="s1">imageEdgeInsets</span><span class="s2"> = </span><span class="s8">UIEdgeInsetsMake</span><span class="s2">(</span><span class="s3">0</span><span class="s2">, -</span><span class="s3">20</span><span class="s2">, </span><span class="s3">0</span><span class="s2">, </span><span class="s3">0</span><span class="s2">);</span></p><p class="p2"><span class="s4">    </span><span class="s2">//</span><span class="s5">設定</span><span class="s2">button</span><span class="s5">為</span><span class="s2">navigationItem</span></p><p class="p4"><span class="s4">    </span><span class="s2">UIBarButtonItem</span><span class="s4"> *backItem = [[</span><span class="s2">UIBarButtonItem</span><span class="s4"> </span><span class="s8">alloc</span><span class="s4">] </span><span class="s8">initWithCustomView</span><span class="s4">:btn];</span></p><p class="p4"><span class="s4">    </span><span class="s6">self</span><span class="s4">.</span><span class="s2">navigationItem</span><span class="s4">.</span><span class="s2">leftBarButtonItem</span><span class="s4"> = backItem;</span></p>

使用UIEdgeInsetsMake有些山寨,但是能達到效果就行了


iOS:navigationItem自訂時無法緊貼左側

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.