我有一個應用程序,我在其中動態分配5 UISegmentedControl
到視圖中。最後得到一個完成按鈕。我的條件是進入下一步(按完成按鈕時),所有UISegmentControl
s「應由用戶選擇」。如何檢查用戶是否選擇了UISegmentedControl?
segmentcontrol中的默認選擇是none。 如何檢查我的視圖中的所有UISegmentedControls
是否在執行done按鈕之前由用戶選擇?
我有一個應用程序,我在其中動態分配5 UISegmentedControl
到視圖中。最後得到一個完成按鈕。我的條件是進入下一步(按完成按鈕時),所有UISegmentControl
s「應由用戶選擇」。如何檢查用戶是否選擇了UISegmentedControl?
segmentcontrol中的默認選擇是none。 如何檢查我的視圖中的所有UISegmentedControls
是否在執行done按鈕之前由用戶選擇?
從一蘋果文檔,這應該回答你的問題:
@property(nonatomic) NSInteger selectedSegmentIndex
討論 默認值是UISegmentedControlNoSegment
(不選擇段),直到用戶觸摸段。
希望你可以使用它來檢查值是否是用戶選擇,以防止轉到下一頁。
將目標和操作添加到您的segmentControls for UIControlEventValueChanged。 從您在動作中選擇的選擇器中,檢查哪個segmentControl已更改,並將其設置爲相應的標誌(例如,未選中時爲@「0」且一旦選擇時爲@「1」的字符串數組)。
在任何時候檢查哪些標誌未設置,相應的segmentControls從未被選中。
這是如何ü創建一個UISegmentedControl
NSArray *itemArray = [NSArray arrayWithObjects: @"Title1", @"Title2", @"Title3", @"Title4",nil];
segmentedControl = [[UISegmentedControl alloc] initWithItems:itemArray];
segmentedControl.frame = CGRectMake(0, 0, 310, 35);
segmentedControl.segmentedControlStyle = UISegmentedControlStyleBar;
segmentedControl.selectedSegmentIndex = 0;
[segmentedControl addTarget:self action:@selector(pickOne:) forControlEvents:UIControlEventValueChanged];
segmentedControl.tintColor=[UIColor grayColor];
然後找到選中了哪個段,
NSString *category =[segmentedControl titleForSegmentAtIndex: [segmentedControl selectedSegmentIndex]];
if([email protected]"Title1"){
//Do something here..
}
希望這有助於....快樂編碼
代碼的第二部分必須寫入名爲 - (void)pickOne:(id)sender ....(這是根據上面的代碼..) – booleanBoy
謝謝..但我怎麼知道所有segmentcontrols被選中? –
選擇所有細分控件的意思是......用戶一次只能選擇一個...... – booleanBoy
NSLog(@"%i", self.segment.selectedSegmentIndex);
這結果-1
如果沒有選擇分段。
一次只能選擇其中一個段,您的意思是**我的視圖中的所有uisegmentedcontrol是由用戶選擇的**?你的意思是**我所看到的所有uisegmentedcontrol都是由用戶選擇的? –
可以選擇一個選項.ok.but但我有5個uisegmentedcontrol在我的視圖中檢查是否全部都是在最終完成按鈕按下之前選中的? –