日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

iOS - UIButton 开发总结

發布時間:2025/4/14 编程问答 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 iOS - UIButton 开发总结 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
iOS - UIButton 開發總結
一 UIButton基礎
? ? iOS中提供了UIButton、UILable、UITextField、UIImageView等基礎UI控件,繼承于UIView。
? ? UIbutton繼承自UIControl,UIControl派生自UIView類,每個控件都有很多視圖的特性,包括附著于其他視圖的能力,所有控件都擁有一套共同的屬性和方法,包含顯示內容,點擊事件等等,UIControl的子類都有事件處理能力。


UIButton的定義:
? ? ?UIButton可使用 initWithFrame、buttonWithType兩種方式創建。


UIButton使用如下方法添加事件。
[btn addTarget:<#(id)#> action:<#(SEL)#> forControlEvents:<#(UIControlEvents)#>] ?
這些事件都是基于觸摸、基于值、基于編輯。




二 設置UIButton的文字顯示位置、字體的大小、字體的顏色
btn.frame = CGRectMake(x, y, width, height);
[btn setTitle: @"search" forState: UIControlStateNormal];
//設置按鈕上的自體的大小
//[btn setFont: [UIFont systemFontSize: 14.0]]; ? ?//這種可以用來設置字體的大小,但是可能會在將來的SDK版本中去除改方法
//應該使用
btn.titleLabel.font = [UIFont systemFontOfSize: 14.0];
[btn seBackgroundColor: [UIColor blueColor]];
//最后將按鈕加入到指定視圖superView
[superView addSubview: btn];
==========================================================
tvnamelabel=[[UIButton alloc]initWithFrame:CGRectMake(5,5,200,40)];
這樣初始化的button,文字默認顏色是白色的,所有如果背景也是白色的話,是看不到文字的,
btn.contentHorizontalAlignment=UIControlContentHorizontalAlignmentLeft ;//設置文字位置,現設為居左,默認的是居中
[btn setTitle:@“title”forState:UIControlStateNormal];// 添加文字
有些時候我們想讓UIButton的title居左對齊,我們設置
btn.textLabel.textAlignment = UITextAlignmentLeft
是沒有作用的,我們需要設置
btn.contentHorizontalAlignment = UIControlContentHorizonAlignmentLeft;
但是問題又出來,此時文字會緊貼到做邊框,我們可以設置
btn.contentEdgeInsets = UIEdgeInsetsMake(0,10, 0, 0);
使文字距離做邊框保持10個像素的距離。
=======================================================
設置UIButton上字體的顏色設置UIButton上字體的顏色,不是用:
[btn.titleLabel setTextColor:[UIColorblackColor]];
btn.titleLabel.textColor=[UIColor redColor];
而是用:
[btn setTitleColor:[UIColor blackColor]forState:UIControlStateNormal];


三 uibutton實現左文字右圖片
[btnRight setTitleEdgeInsets:UIEdgeInsetsMake(0, -imgArrow.size.width, 0, imgArrow.size.width)];
[btnRight setImageEdgeInsets:UIEdgeInsetsMake(0, btnRight.titleLabel.bounds.size.width, 0, -btnRight.titleLabel.bounds.size.width)];


uibutton默認是左圖片,右文字。并且在設置edge insets之前,位置已經有了設定。所以設置title的edge insets,真實的作用是在原來的邊距值基礎上增加或減少某個間距,負值便是減少。以title為例,設置右邊距增加圖片寬度,就使得自己的右邊界距離按鈕的右邊界多了圖片的寬度,正好放下圖片。此時,title lable變小了,而title lable的左邊界還在原來的位置上,所以lable的左邊界距離按鈕的左邊界減少圖片的寬度,lable就和原來一樣大了,而且左側起始位置和圖片的左側起始位置相同了。

總結

以上是生活随笔為你收集整理的iOS - UIButton 开发总结的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。