Ios-uibutton-setting the button title and picture position

Source: Internet
Author: User
<span id="Label3"></p><p><p>One.</p></p><p><p>1.Button before being clicked</p></p><p><p></p></p><p><p>After 2.Button is clicked</p></p><p><p></p></p><p><p>Two. Code</p></p><pre><span style="color: #008080;"><span style="color: #008080;">1</span></span>- (<span style="color: #0000ff;"><span style="color: #0000ff;">void</span></span><span style="color: #000000;"><span style="color: #000000;">) CreateBtn3</span></span><span style="color: #008080;"><span style="color: #008080;">2</span></span> <span style="color: #000000;"><span style="color: #000000;">{</span></span><span style="color: #008080;"><span style="color: #008080;">3</span></span>UIImage * Buttonimage = [UIImage imagenamed:<span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">1.jpg</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span><span style="color: #000000;"><span style="color: #000000;">];</span></span><span style="color: #008080;"><span style="color: #008080;">4</span></span>UIImage * SelectedImage = [UIImage imagenamed:<span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">2.jpg</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span><span style="color: #000000;"><span style="color: #000000;">];</span></span><span style="color: #008080;"><span style="color: #008080;">5</span></span>CGFloat buttonimageviewwidth =<span style="color: #000000;"><span style="color: #000000;">cgimagegetwidth (buttonimage.cgimage);</span></span><span style="color: #008080;"><span style="color: #008080;">6</span></span>CGFloat buttonimageviewheight =<span style="color: #000000;"><span style="color: #000000;">cgimagegetheight (buttonimage.cgimage);</span></span><span style="color: #008080;"><span style="color: #008080;">7</span></span> <span style="color: #008080;"><span style="color: #008080;">8</span></span>NSString * Buttontitle =<span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">left image Right caption</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span><span style="color: #000000;"><span style="color: #000000;">;</span></span><span style="color: #008080;"><span style="color: #008080;">9</span></span>Uifont * Buttontitlefont = [uifont systemfontofsize:<span style="color: #800080;"><span style="color: #800080;">17.0f</span></span><span style="color: #000000;"><span style="color: #000000;">];</span></span><span style="color: #008080;"><span style="color: #008080;">Ten</span></span>Nsdictionary * attributes =<span style="color: #000000;"><span style="color: #000000;">@{nsfontattributename:buttontitlefont};</span></span><span style="color: #008080;"><span style="color: #008080;"></span> one</span>Cgsize buttontitlelabelsize =<span style="color: #000000;"><span style="color: #000000;">[buttontitle sizewithattributes:attributes];</span></span><span style="color: #008080;"><span style="color: #008080;"></span> a</span> <span style="color: #008080;"><span style="color: #008080;"></span> -</span> <span style="color: #008000;"><span style="color: #008000;">//</span></span><span style="color: #008000;"><span style="color: #008000;">button width, at least the sum of imageview width and Titlelabel width</span></span><span style="color: #008080;"><span style="color: #008080;"></span> -</span>CGFloat Buttonwith = Buttonimageviewwidth +<span style="color: #000000;"><span style="color: #000000;">buttontitlelabelsize.width;</span></span><span style="color: #008080;"><span style="color: #008080;"></span> the</span> <span style="color: #008000;"><span style="color: #008000;">//</span></span><span style="color: #008000;"><span style="color: #008000;">button height, at least the sum of imageview height and Titlelabel height</span></span><span style="color: #008080;"><span style="color: #008080;"></span> -</span>CGFloat buttonheight = Buttonimageviewheight +<span style="color: #000000;"><span style="color: #000000;">buttontitlelabelsize.height;</span></span><span style="color: #008080;"><span style="color: #008080;"></span> -</span> <span style="color: #008080;"><span style="color: #008080;"></span> -</span>UIButton * Btn3 =<span style="color: #000000;"><span style="color: #000000;">[[UIButton alloc] init];</span></span><span style="color: #008080;"><span style="color: #008080;"></span> +</span>[btn3 Setcenter:cgpointmake (<span style="color: #800080;"><span style="color: #800080;"></span> the</span>,<span style="color: #800080;"><span style="color: #800080;"></span> the</span><span style="color: #000000;"><span style="color: #000000;">)];</span></span><span style="color: #008080;"><span style="color: #008080;"></span> -</span>[btn3 Setbounds:cgrectmake (<span style="color: #800080;"><span style="color: #800080;">0</span></span>,<span style="color: #800080;"><span style="color: #800080;">0</span></span><span style="color: #000000;"><span style="color: #000000;">, buttonwith, buttonheight)];</span></span><span style="color: #008080;"><span style="color: #008080;"></span> +</span> <span style="color: #000000;"><span style="color: #000000;">[btn3 Setbackgroundcolor:[uicolor redcolor];</span></span><span style="color: #008080;"><span style="color: #008080;"></span> a</span> <span style="color: #008080;"><span style="color: #008080;"></span> at</span> <span style="color: #000000;"><span style="color: #000000;">[btn3.titlelabel setfont:buttontitlefont];</span></span><span style="color: #008080;"><span style="color: #008080;"></span> -</span> <span style="color: #000000;"><span style="color: #000000;">[btn3 setimage:buttonimage forstate:uicontrolstatenormal];</span></span><span style="color: #008080;"><span style="color: #008080;"></span> -</span> <span style="color: #008080;"><span style="color: #008080;"></span> -</span> <span style="color: #000000;"><span style="color: #000000;">[btn3 setimage:selectedimage forstate:uicontrolstateselected];</span></span><span style="color: #008080;"><span style="color: #008080;"></span> -</span> <span style="color: #008080;"><span style="color: #008080;"></span> -</span> <span style="color: #000000;"><span style="color: #000000;">[btn3 settitle:buttontitle forstate:uicontrolstatenormal];</span></span><span style="color: #008080;"><span style="color: #008080;"></span> in</span> <span style="color: #008080;"><span style="color: #008080;"></span> -</span> <span style="color: #000000;"><span style="color: #000000;">[btn3 settitlecolor:[uicolor blackcolor] forstate:uicontrolstatenormal];</span></span><span style="color: #008080;"><span style="color: #008080;"></span> to</span> <span style="color: #008080;"><span style="color: #008080;"></span> +</span> <span style="color: #000000;"><span style="color: #000000;">[btn3.titlelabel Setbackgroundcolor:[uicolor whitecolor];</span></span><span style="color: #008080;"><span style="color: #008080;"></span> -</span> <span style="color: #008080;"><span style="color: #008080;"></span> the</span> <span style="color: #000000;"><span style="color: #000000;">[btn3 addtarget:self action: @selector (clicked:) forcontrolevents:uicontroleventtouchupinside];</span></span><span style="color: #008080;"><span style="color: #008080;"></span> *</span> <span style="color: #000000;"><span style="color: #000000;">[self.view addsubview:btn3];</span></span><span style="color: #008080;"><span style="color: #008080;"></span> $</span> <span style="color: #008080;"><span style="color: #008080;">Panax Notoginseng</span></span> <span style="color: #000000;"><span style="color: #000000;">}</span></span><span style="color: #008080;"><span style="color: #008080;"></span> -</span>- (<span style="color: #0000ff;"><span style="color: #0000ff;">void</span></span>) clicked: (UIButton *<span style="color: #000000;"><span style="color: #000000;">) Btn3</span></span><span style="color: #008080;"><span style="color: #008080;"></span> the</span> <span style="color: #000000;"><span style="color: #000000;">{</span></span><span style="color: #008080;"><span style="color: #008080;"></span> +</span>NSLog (<span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">Btn1 was Clicked.</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span><span style="color: #000000;"><span style="color: #000000;">);</span></span><span style="color: #008080;"><span style="color: #008080;"></span> a</span>NSString * Buttonselectedtitle =<span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">Next title</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span><span style="color: #000000;"><span style="color: #000000;">;</span></span><span style="color: #008080;"><span style="color: #008080;"></span> the</span> <span style="color: #000000;"><span style="color: #000000;">[btn3 settitle:buttonselectedtitle forstate:uicontrolstatenormal];</span></span><span style="color: #008080;"><span style="color: #008080;"></span> +</span> <span style="color: #008080;"><span style="color: #008080;"></span> -</span>Cgpoint Buttonboundscenter =<span style="color: #000000;"><span style="color: #000000;">cgpointmake (cgrectgetmidx (btn3.bounds), cgrectgetmidy (btn3.bounds));</span></span><span style="color: #008080;"><span style="color: #008080;"></span> $</span> <span style="color: #008080;"><span style="color: #008080;"></span> $</span> <span style="color: #008000;"><span style="color: #008000;">//</span></span><span style="color: #008000;"><span style="color: #008000;">Find out Imageview's final center</span></span><span style="color: #008080;"><span style="color: #008080;"></span> -</span>Cgpoint Endimageviewcenter =<span style="color: #000000;"><span style="color: #000000;">cgpointmake (buttonboundscenter.x, cgrectgetmidy (btn3.imageView.bounds));</span></span><span style="color: #008080;"><span style="color: #008080;"></span> -</span> <span style="color: #008080;"><span style="color: #008080;"></span> the</span> <span style="color: #008000;"><span style="color: #008000;">//</span></span><span style="color: #008000;"><span style="color: #008000;">Find out Titlelabel's final center</span></span><span style="color: #008080;"><span style="color: #008080;"></span> -</span>Cgpoint endtitlelabelcenter = cgpointmake (buttonboundscenter.x, cgrectgetheight (btn3.bounds)-<span style="color: #000000;"><span style="color: #000000;">Cgrectgetmidy (btn3.titleLabel.bounds));</span></span><span style="color: #008080;"><span style="color: #008080;">Wuyi</span></span> <span style="color: #008080;"><span style="color: #008080;"></span> the</span> <span style="color: #008000;"><span style="color: #008000;">//</span></span><span style="color: #008000;"><span style="color: #008000;">Get Imageview's Initial center</span></span><span style="color: #008080;"><span style="color: #008080;"></span> -</span>Cgpoint Startimageviewcenter =<span style="color: #000000;"><span style="color: #000000;">btn3.imageView.center;</span></span><span style="color: #008080;"><span style="color: #008080;"></span> wu</span> <span style="color: #008080;"><span style="color: #008080;"></span> -</span> <span style="color: #008000;"><span style="color: #008000;">//</span></span><span style="color: #008000;"><span style="color: #008000;">Get Titlelabel's Initial center</span></span><span style="color: #008080;"><span style="color: #008080;"></span> about</span>Cgpoint Starttitlelabelcenter =<span style="color: #000000;"><span style="color: #000000;">btn3.titleLabel.center;</span></span><span style="color: #008080;"><span style="color: #008080;"></span> $</span> <span style="color: #008080;"><span style="color: #008080;"></span> -</span> <span style="color: #008000;"><span style="color: #008000;">//</span></span><span style="color: #008000;"><span style="color: #008000;">Set Imageedgeinsets</span></span><span style="color: #008080;"><span style="color: #008080;"></span> -</span>CGFloat imageedgeinsetstop = endimageviewcenter.y-<span style="color: #000000;"><span style="color: #000000;">startimageviewcenter.y;</span></span><span style="color: #008080;"><span style="color: #008080;"></span> -</span> <span style="color: #008080;"><span style="color: #008080;"></span> a</span>CGFloat imageedgeinsetsleft = endimageviewcenter.x-<span style="color: #000000;"><span style="color: #000000;">startimageviewcenter.x;</span></span><span style="color: #008080;"><span style="color: #008080;"></span> +</span> <span style="color: #008080;"><span style="color: #008080;"></span> the</span>CGFloat Imageedgeinsetsbottom =-<span style="color: #000000;"><span style="color: #000000;">imageedgeinsetstop;</span></span><span style="color: #008080;"><span style="color: #008080;"></span> -</span> <span style="color: #008080;"><span style="color: #008080;"></span> $</span>CGFloat imageedgeinsetsright =-<span style="color: #000000;"><span style="color: #000000;">imageedgeinsetsleft;</span></span><span style="color: #008080;"><span style="color: #008080;"></span> the</span> <span style="color: #008080;"><span style="color: #008080;"></span> the</span>Btn3.imageedgeinsets =<span style="color: #000000;"><span style="color: #000000;">uiedgeinsetsmake (imageedgeinsetstop, imageedgeinsetsleft, imageedgeinsetsbottom, imageedgeinsetsright);</span></span><span style="color: #008080;"><span style="color: #008080;"></span> the</span> <span style="color: #008080;"><span style="color: #008080;"></span> the</span> <span style="color: #008000;"><span style="color: #008000;">//</span></span><span style="color: #008000;"><span style="color: #008000;">Set Titleedgeinsets</span></span><span style="color: #008080;"><span style="color: #008080;"></span> -</span>CGFloat titleedgeinsetstop = endtitlelabelcenter.y-<span style="color: #000000;"><span style="color: #000000;">starttitlelabelcenter.y;</span></span><span style="color: #008080;"><span style="color: #008080;"></span> in</span> <span style="color: #008080;"><span style="color: #008080;"></span> the</span>CGFloat titleedgeinsetsleft = endtitlelabelcenter.x-<span style="color: #000000;"><span style="color: #000000;">starttitlelabelcenter.x;</span></span><span style="color: #008080;"><span style="color: #008080;"></span> the</span> <span style="color: #008080;"><span style="color: #008080;"></span> about</span>CGFloat Titleedgeinsetsbottom =-<span style="color: #000000;"><span style="color: #000000;">titleedgeinsetstop;</span></span><span style="color: #008080;"><span style="color: #008080;"></span> the</span> <span style="color: #008080;"><span style="color: #008080;"></span> the</span>CGFloat titleedgeinsetsright =-<span style="color: #000000;"><span style="color: #000000;">titleedgeinsetsleft;</span></span><span style="color: #008080;"><span style="color: #008080;"></span> the</span> <span style="color: #008080;"><span style="color: #008080;"></span> +</span>Btn3.titleedgeinsets =<span style="color: #000000;"><span style="color: #000000;">uiedgeinsetsmake (titleedgeinsetstop, titleedgeinsetsleft, titleedgeinsetsbottom, titleedgeinsetsright);</span></span><span style="color: #008080;"><span style="color: #008080;"></span> -</span>}</pre><p><p></p></p><p><p>Ios-uibutton-setting the button title and picture position</p></p></span>

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

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.