1. 程式人生 > >IOS ----UIButton用法詳解

IOS ----UIButton用法詳解

這段程式碼動態的建立了一個UIButton,並且把相關常用的屬性都列舉了.希望對大家有用.

  //這裡建立一個圓角矩形的按鈕
UIButton *button1 = [UIButton buttonWithType:UIButtonTypeRoundedRect];

// 能夠定義的button型別有以下6種,
// typedef enum {
// UIButtonTypeCustom = 0, 自定義風格
// UIButtonTypeRoundedRect, 圓角矩形 
// UIButtonTypeDetailDisclosure, 藍色小箭頭按鈕,主要做詳細說明用
// UIButtonTypeInfoLight, 亮色感嘆號
// UIButtonTypeInfoDark, 暗色感嘆號
// UIButtonTypeContactAdd, 十字加號按鈕
// } UIButtonType;

//給定button在view上的位置
button1.frame = CGRectMake(20, 20, 280, 40);

//button背景色
button1.backgroundColor = [UIColor clearColor];

//設定button填充圖片
//[button1 setImage:[UIImage imageNamed:@"btng.png"] forState:UIControlStateNormal];

//設定button標題
[button1 setTitle:@"點選" forState:UIControlStateNormal];

/* forState: 這個引數的作用是定義按鈕的文字或圖片在何種狀態下才會顯現*/
//以下是幾種狀態
// enum {
// UIControlStateNormal = 0, 常規狀態顯現 
// UIControlStateHighlighted = 1 << 0, 高亮狀態顯現 
// UIControlStateDisabled = 1 << 1, 禁用的狀態才會顯現
// UIControlStateSelected = 1 << 2, 選中狀態 
// UIControlStateApplication = 0x00FF0000, 當應用程式標誌時 
// UIControlStateReserved = 0xFF000000 為內部框架預留,可以不管他 
// };

/*
* 預設情況下,當按鈕高亮的情況下,影象的顏色會被畫深一點,如果這下面的這個屬性設定為no,
* 那麼可以去掉這個功能
*/
button1.adjustsImageWhenHighlighted = NO;
/*跟上面的情況一樣,預設情況下,當按鈕禁用的時候,影象會被畫得深一點,設定NO可以取消設定*/
button1.adjustsImageWhenDisabled = NO;
/* 下面的這個屬性設定為yes的狀態下,按鈕按下會發光*/
button1.showsTouchWhenHighlighted = YES;

/* 給button新增事件,事件有很多種,我會單獨開一篇博文介紹它們,下面這個時間的意思是
按下按鈕,並且手指離開螢幕的時候觸發這個事件,跟web中的click事件一樣。
觸發了這個事件以後,執行butClick:這個方法,addTarget:self 的意思是說,這個方法在本類中
也可以傳入其他類的指標*/
[button1 addTarget:self action:@selector(butClick:) forControlEvents:UIControlEventTouchUpInside];

//顯示控制元件
[self.view addSubview:button1];

注意:

[button1 addTarget:self 
action:@selector(alarmTimeDone:) 
forControlEvents:UIControlEventTouchUpInside
];

addTarget:self 是連結到self,一般都這樣設定
action:@selector(alarmTimeDone:) 時間處理函式
forControlEvents:UIControlEventTouchUpInside 控制元件事件處理的訊息

 

//取消按鈕已經新增的所有事件:(這個比較重要,若添加了兩個事件  兩個事件都會被觸發)

[btn removeTarget:nil action:nil forControlEvents:UIControlEventTouchUpInside];

何時釋放release UIButton?

是否在dealloc中對UIButton物件進行release操作,取決於UIButton初始化的方式。

如果使用[UIButtonbuttonWithType:UIButtonTypeRoundedRect]這種方式,是不需要進行release操作的,因為這種方式是自動釋放的。如果使用 [[UIButton alloc]init]的方式,則需要主動進行release釋放操作。

相關推薦

IOS ----UIButton用法

這段程式碼動態的建立了一個UIButton,並且把相關常用的屬性都列舉了.希望對大家有用.   //這裡建立一個圓角矩形的按鈕UIButton *button1 = [UIButton buttonWithType:UIButtonTypeRoundedRect];// 能夠定義的button型別有以下6種

IOS UIScrollView——用法

UIScrollView是用來在螢幕上顯示那些在有限區域內放不下的內容。例如,在手機螢幕上顯示內容豐富的網頁或者很大的圖片。在這種情況下,需要使用者對螢幕內容進行拖動或縮放來檢視螢幕或視窗區域外的內容。 所以,ScrollView應該首先有一個視窗,用來顯示內容,其次,還要

IOS NSString 用法

//NSString 操作均不改變自身值 //構建字串 NSString *szTmp = @"A string"; //直接賦值 szTmp = nil; int n = 5; NSString *szMyString = [NSStr

iOS中nil、Nil、NULL和NSNull的理解和用法

nil 這個也是條件編譯的,那麼對於我們Objective-C開發來說,nil就代表((void *)0)。 我們使用nil表示Objective-C物件為空,如NSString *str = nil。 我們給物件賦值時一般會使用object = nil,表示我想把這個物件釋放掉;

iOS 集合NSSet 用法

集合NSSet //NSSet中不能存在重複的物件 NSMutableSet *set1 = [[NSMutableSet alloc] initWithObjects:@"1",@"2",@"3", nil]; NSMutableSet *

iOS NSScanner類的基本用法

簡介 NSScanner是一個類,用於在字串中掃描指定的字元,尤其是把它們翻譯/轉換為數字和別的字串。可以在建立NSScaner時指定它的string屬性,然後scanner會按照你的要求從頭到尾地掃描這個字串的每個字元。 NSScanner類是一個類簇的抽象父類,該類簇

JavaScript中return的用法

style 返回 www log tle blog 意思 charset fun 1、定義:return 從字面上的看就是返回,官方定義return語句將終止當前函數並返回當前函數的值,可以看下下面的示例代碼: <!DOCTYPE html><html l

SVN trunk(主線) branch(分支) tag(標記) 用法和詳細操作步驟

trac load mar span 必須 最可 objc copy 右鍵 原文地址:http://blog.csdn.net/vbirdbest/article/details/51122637 使用場景: 假如你的項目(這裏指的是手機客戶端項目)的某個版本(例如1.0

js 定時器用法——setTimeout()、setInterval()、clearTimeout()、clearInterval()

ntb 幫助 .get tint num 用法 -c 函數 tel 在js應用中,定時器的作用就是可以設定當到達一個時間來執行一個函數,或者每隔幾秒重復執行某段函數。這裏面涉及到了三個函數方法:setInterval()、setTimeout()、clearI

selenium用法

key url enc element api code 需要 int question selenium用法詳解 selenium主要是用來做自動化測試,支持多種瀏覽器,爬蟲中主要用來解決JavaScript渲染問題。 模擬瀏覽器進行網頁加載,當requests,url

C# ListView用法

ont 結束 server 發生 匹配 鼠標 之前 小圖標 order 一、ListView類 1、常用的基本屬性: (1)FullRowSelect:設置是否行選擇模式。(默認為false) 提示:只有在Details視圖該屬性才有意義

linux cp命令參數及用法---linux 復制文件命令cp

linux file linux cp命令參數及用法詳解---linux 復制文件命令cp [root@Linux ~]# cp [-adfilprsu] 來源檔(source) 目的檔(destination)[root@linux

Python數據類型方法簡介一————字符串的用法

python 字符串連接 字符串用法 符串是Python中的重要的數據類型之一,並且字符串是不可修改的。 字符串就是引號(單、雙和三引號)之間的字符集合。(字符串必須在引號之內,引號必須成對)註:單、雙和三引號在使用上並無太大的區別; 引號之間可以采取交叉使用的方式避免過多轉義;

C# ListView用法(轉)

分組 創建 cti 排列 checkbox 定義 com 程序 erl 一、ListView類 1、常用的基本屬性: (1)FullRowSelect:設置是否行選擇模式。(默認為false) 提示:只有在Details視圖該屬性才有

java中的instanceof用法

定義 xtend print 繼承 interface 參數 保留 如果 ack   instanceof是Java的一個二元操作符(運算符),也是Java的保留關鍵字。它的作用是判斷其左邊對象是否為其右邊類的實例,返回的是boolean類型的數據。用它來判斷某個對象是否是

@RequestMapping 用法

同時 get() turn example track find 說明 tex -h 簡介: @RequestMapping RequestMapping是一個用來處理請求地址映射的註解,可用於類或方法上。用於類上,表示類中的所有響應請求的方法都是以該地址作為父路徑。

iOS繪圖CGContextRef

單獨 tsa 我們 分享 繪制線 cloc tcl attr 舉例 轉自:http://blog.csdn.net/u014286994/article/details/51333118 /* CoreGraphics - CGContext.h */ /** Grap

Css中路徑data:image/png;base64的用法 (轉載)

javascrip base64編碼 asc cda 文件的 color 情況 ont 背景圖片 大家可能註意到了,網頁上有些圖片的src或css背景圖片的url後面跟了一大串字符,比如: background-image:url(data:image/png;bas

global用法

global 在函數內傳遞參數1、global一般用在函數內,將外部變量參數傳遞至函數內部,用法為:<?php $name = "why"; function changeName(){ global $name; $name = "what";

java中靜態代碼塊的用法—— static用法

super關鍵字 了解 裝載 static關鍵字 super 屬於 註意 lock 自動 (一)java 靜態代碼塊 靜態方法區別一般情況下,如果有些代碼必須在項目啟動的時候就執行的時候,需要使用靜態代碼塊,這種代碼是主動執行的;需要在項目啟動的時候就初始化,在不創建對象的