2012-03-07 49 views
0

我改變一個iPhone應用程序,UISegmentedControl:無法調用IOS方法5.0

當我改變分段鍵的值,

應該調用該方法,

- (void) setSelectedSegmentIndex:(NSInteger)index 

我在自定義類中覆蓋了它。

enter image description here

沒有與段相關聯IBAction爲。

在ios 4.3中它被調用。 但是,在ios 5.0中沒有調用它。

這裏是它的ResultUnitSwitch.h文件

@interface ResultUnitSwitch : UISegmentedControl { 

    id <ResultUnitDelegate> delegate; 

    MCUnit *activeUnit; 

    NSArray *units;    
} 


There is a method call stack for ios 4.3 

enter image description here

那麼,爲什麼它被稱爲在IOS 4.3,而不是IOS同一項目的5.0是什麼改變的是UISegmentedControl

回答

1

setSelectedSegmentIndex是一個爲外部使用設計的屬性設置器。您依賴未公開的內部框架使用爲您的應用程序,因此不能保證這將永遠工作。

可以覆蓋一個初始化方法(initWithCoder:如果使用XIBs)加入您的子類作爲事件目標的方法:

[self addTarget:self action:@selector(action:) forControlEvents:UIControlEventValueChanged]; 
+0

謝謝你會嘗試.. – 2012-03-07 11:10:54