0
我有一個頁面控件,我希望能夠防止一些頁面更改事件(不完全禁用控件)。基本上,我希望用戶在回答當前頁面上的所有問題之前不能移動到下一頁,但我仍然希望它們能夠向後移動。如何取消UIPageControl的UIControlEventValueChanged事件?
有沒有什麼辦法讓控件聽起來像「將改變」事件並取消它?
我有一個頁面控件,我希望能夠防止一些頁面更改事件(不完全禁用控件)。基本上,我希望用戶在回答當前頁面上的所有問題之前不能移動到下一頁,但我仍然希望它們能夠向後移動。如何取消UIPageControl的UIControlEventValueChanged事件?
有沒有什麼辦法讓控件聽起來像「將改變」事件並取消它?
你應該能夠做這樣的事情,在這裏condition
是,如果他們已經回答了所有的問題,你會設置爲yes一個布爾值,
@implementation ViewController {
BOOL condition;
NSInteger pageNumber;
}
- (void)viewDidLoad {
[super viewDidLoad];
pageNumber = 5; // I set this to 5 which was the page control's inital value just for the test
condition = NO;
}
- (IBAction)pageControlTapped:(UIPageControl *)sender {
if (condition) {
pageNumber = sender.currentPage;
// move to the next or previous page
}else{
if (pageNumber >= sender.currentPage) {
pageNumber = sender.currentPage;
// move to the previous page
}else{
sender.currentPage = pageNumber;
// don't move
}
}
}