IOS開發過程中的問題記錄(一)

在IOS開發過程中遇到的問題,記錄下來以便日後查找

1、如何判斷設備是iPhone還是iPad?

if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone)
 {
           // iPhone         
 }
else
 {
           // iPad
 }

 

2、UIImagePickerController返回的圖片是顛倒的?

UIImagePickerController返回的照片帶有方向信息,如當手機豎直拍照時,就可能造成旋轉了90°的情況。而且如果直接取其圖像數據,或者將圖像保存到本地的話,就會丟失這個方向信息,導致下一次讀取出來圖片就是顛倒的。

解決方法:

if(image.imageOrientation != UIImageOrientationUp){

                UIGraphicsBeginImageContext(image.size);

                [image drawInRect:CGRectMake(0, 0, image.size.width, image.size.height)];

                image = UIGraphicsGetImageFromCurrentImageContext();

                UIGraphicsEndImageContext();

}

 

3、Local declaration of 'XXX' hides instance variable 的原因?

遇到這種原因,是因爲本地變量跟函數參數變量同名。看來,還是要注意變量的命名啊!

 

4、Xcode10,控件區域挪到上面去了!

最近把Xcode升級到了10,處於使用慣性,去右下角找控件區,找不到了,以爲窗口隱藏了,去菜單欄裏面尋找顯示的菜單,沒找到,居然被折騰了一番,最後找到這貨在右上角的工具欄裏面最左邊的類似於銅錢的標誌😓,如圖:

 

5、UIView animation 的簡單用法和參數介紹

[UIView animateWithDuration: 0.5 delay: 0.5 options: UIViewAnimationOptionCurveEaseInOut animations: ^{

} completion: ^(BOOL finished) {

}];

duration:    動畫時長

delay:        動畫在延遲多久之後執行

options:     動畫的表現形式,如下幾個:

                    UIViewAnimationOptionCurveEaseInOut   //先加速後減速,默認值

                    UIViewAnimationOptionCurveEaseIn         //由慢到快

                    UIViewAnimationOptionCurveEaseOut      //由快到慢

                    UIViewAnimationOptionCurveLinear          //勻速

animations:動畫的執行模塊

completion:動畫結束後執行的代碼塊

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章