2012-11-15 72 views
-2

我只是iOS的初學者。我在一篇關於交換機的教程中看到了** [leftSwitch setOn:setting animated:YES]; **的聲明。開關在ios

UISwitch *leftSwitch; 


    UISwitch *whichSwitch = (UISwitch *)sender; 
    BOOL setting = whichSwitch.isOn; 
    [leftSwitch setOn:setting animated:YES]; 

請解釋我在這context.Thanks關鍵字animated的需要預先

+1

你試過既肯定又否定和觀察到的結果? –

+0

@ ElJay我觀察了結果。我想知道它真正的編程工作 – Techy

+0

我推薦一本關於該語言的書。 :) objC是/看起來有時是不同的BIT。通過hildegrass在可可中編程是一個經典之作。 (無論如何,看到我對這個問題的答案)有關這本書的信息是友好的建議 –

回答

1
在objC

,參數不要在C或Java或前來方法名稱後面像... 在objC,參數交織在一起的方法名稱..

lalalaa:PARAM lalala:PARAM2 lalala:PARAM3 

間隔時間:而來的ONE PARAM

所以動畫:方法名=一部分

setOn:animated: 
0

該方法的animated部分確定其中該開關狀態的改變是一個很好的平滑動畫或沒有。試試YESNO,你會看到。

0

setOn:animated: 將開關狀態設置爲「開」或「關」,可選擇對轉換進行動畫處理。

  • (無效)西頓:上動畫(BOOL):動畫 參數 上 (BOOL)YES如果開關應該被轉動到打開位置;如果應該將其轉到關閉位置,則爲NO。如果開關已經在指定位置,則不會發生任何事情。

動畫 是爲動畫顯示開關的「翻轉」否則不。 SEE:http://developer.apple.com/library/ios/#documentation/uikit/reference/UISwitch_Class/Reference/Reference.html

+0

@ Tatarasanu Victor感謝dude.i明白了這一點 – Techy

+0

在應用程序商店中尋找Dash這個應用程序有很多langs/frameworks的文檔,在開發過程中會有很多幫助。 –

0

拖放UISwitchxib文件中。

.h文件:

​​

.m文件:

[onoff addTarget:self action:@selector(switchTapped:) forControlEvents:UIControlEventValueChanged]; 

// Switch 
-(void) switchTapped: (id) sender { 
    UISwitch *switchControl = (UISwitch*) sender; 
    BOOL value = switchControl.isOn; 
    if (value) { 
     [email protected]"ON"; 
    }else{ 
     [email protected]"OFF"; 
    } 
}