之前聽說版本升級后UIActionSheet和UIAlertView不能使用了,但是我們的APP中也沒用到,所以就沒有做深入了解。今天想使用UIImagePickerController的時候發(fā)現(xiàn)還是需要UIActionSheet的效果,于是就做了一番探究。
1. UIAlertController實(shí)現(xiàn)UIAlertView的效果

點(diǎn)擊“確定”和“取消”的時候想要實(shí)現(xiàn)什么功能直接在block里面寫就OK了,從這點(diǎn)上來看要比原來的UIAlertView寫代理方便得多。想要實(shí)現(xiàn)帶輸入框的alertView也只需要添加textField到UIAlertController就行:
UIAlertController *alertC;
[alertC addTextFieldWithConfigurationHandler:^(UITextField * _Nonnull textField) {
?//textField設(shè)置成自己需要的效果
}];
最后模態(tài)推出這個UIAlertController就OK了。
2. UIAlertController實(shí)現(xiàn)UIActionSheet的效果+UIImagePickerController

3.UIImagePickerController的使用
UIImagePickerController能實(shí)現(xiàn)攝像頭和照片庫兩種圖片來源,一般情況下,我們要實(shí)現(xiàn)圖像選取器控制器的兩個代理方法:

我們在APP中使用到的圖片不管是上傳到服務(wù)器還是存到本地,都是在上圖中的第一個代理方法中實(shí)現(xiàn)的。(PS:有時候我們的用戶可能要點(diǎn)擊照片庫里的圖片然后用那個矩形框截取圖片的一部分使用,也就是要對圖片進(jìn)行編輯,那么就需要設(shè)置UIImagePickerController的setAllowsEditing屬性為:YES.)。