我想通過這個按鈕可以從我的標籤單獨刪號 NSMutableString *str=(NSMutableString *)label.text;
的Objective-C ....通過按鈕
str=[str replaceCharacterInRange:NSMakeRange([str length]-1,1) withString:@""];
錯誤刪除的數字從我的標籤..... "Void value not ignored as it ought to be"
我想通過這個按鈕可以從我的標籤單獨刪號 NSMutableString *str=(NSMutableString *)label.text;
的Objective-C ....通過按鈕
str=[str replaceCharacterInRange:NSMakeRange([str length]-1,1) withString:@""];
錯誤刪除的數字從我的標籤..... "Void value not ignored as it ought to be"
您不能僅將NSString
作爲NSMutableString
進行投射,並期望它是可變的。在改變它之前,你需要創建一個可變字符串。
NSMutableString *mutableString = [label.text mutableCopy];
[mutableString replaceCharactersInRange:NSMakeRange([mutableString length] - 1, 1) withString:@""];
replaceCharacterInRange:withString:
返回void,因爲它是一個修改字符串的可變操作。
要解決您的問題,您需要知道的第一件事是,您只需將它轉換爲NSMutableString
即可使用,您需要使用mutableCopy
。
NSMutableString *str= [label.text mutableCopy];
//Now the next thing do not assign str
[str replaceCharacterInRange:NSMakeRange([str length]-1,1) withString:@""];
...
//And finally when you are done if you are not using ARC
///then you need to release the string since you called `mutableCopy`.
[str release];
非常感謝..但按鈕不響應的行動:D – CR7 2011-12-29 21:43:11
使用deleteCharactersInRange:
[str deleteCharacterInRange:NSMakeRange([str length]-1,1) ])]
感謝...但要注意:按鈕的label.text返回標籤.... – CR7 2011-12-29 21:51:31
請澄清你的問題。我無法理解你可能會遇到的其他問題。 – 2011-12-29 23:35:19