在ios8設備上點擊失效的問題

今天發現一個問題,一個點擊效果在ios8的設備上不起做用,而在其餘設備有做用,真機調試發現:ios

[_delegate performSelector:@selector(setIsEditing:) withObject:@(YES)];個方法在不一樣的設備跟蹤調試時傳過去的值不同,其餘的設備上傳過去的是YES,這臺ios8的設備上傳過去的是NO。因而跟蹤一下發現:spa



- (id)performSelector:(SEL)aSelector withObject:(id)object;調試

方法中當以 [_delegate performSelector:@selector(setIsEditing:) withObject:@(YES)];orm

這種方法傳參數時候,setIsEditing方法-的時候應該這樣寫it

 (void)setIsEditing:(id)aIsEditing {io

    BOOL bIsSetEdit = [aIsEditing boolValue];form

    [self enableEditing:bIsSetEdit];object

    _isEditing = aIsEditing;select

}     ios8

而不能這樣寫- (void)setIsEditing:(BOOL)aIsEditing {

        [self enableEditing:aIsEditing];

    _isEditing = aIsEditing;

}。  

不然XCode會將參數的值進行強轉,轉換的結果不可知。有多是YES,也有多是NO。

相關文章
相關標籤/搜索