2013-02-16 77 views
3

我已經在互聯網上搜索瞭解如何在UIImageView中旋轉圖像,而不會出現圖像偏斜的情況。 我測試的例子都沒有成功。所以我必須在此發佈具體問題。iOS iPhone:爲什麼我的圖像旋轉歪斜圖像?

我的旋轉代碼如下所示。 結果顯示在我鏈接到的圖像中(使用5下的代理我無法在帖子中附加圖像)。我輸入角度值,圖像顯示圖像在旋轉後如何結束。

旋轉在0,90,180,270度時正常工作。其他一切都會扭曲圖像。

self rotateImage:_compassScale duration:1 curve:UIViewAnimationCurveEaseIn degrees:(CGFloat)bearing]; 

- (void)rotateImage:(UIImageView *)image duration:(NSTimeInterval)duration curve:(int)curve degrees:(CGFloat)degrees 
{ 
    [UIView beginAnimations:nil context:NULL]; 
    [UIView setAnimationDuration:duration]; 
    [UIView setAnimationCurve:curve]; 
    [UIView setAnimationBeginsFromCurrentState:YES]; 

    CGAffineTransform transform = CGAffineTransformMakeRotation(DEGREES_TO_RADIANS(-degrees)); 
    image.transform = transform; 


    [UIView commitAnimations]; 
} 

90 degrees 120 degrees and skewed

有3倍以上的圖像,如果你改變的URL IM1,IM4和IM5。 Rep不允許發佈更多2個鏈接。

經過大量工作後,我發現約束條件與偏差有關。 NESW環(指南針玫瑰?)是一個圖像,我集中在另一個圖像是指南針框架。用這些圖像拼成的文本字段也與圖像居中。

如果我將NESW環拖到屏幕上的另一個位置,圖像不會傾斜。但它會在屏幕上移動。

我移動了所有3個項目,然後將它們拖回到屏幕上的原始座標。不再有任何偏差。 但是,當我在文本字段中更改角度時,兩個圖像都會稍微改變位置,並且改變似乎並沒有將環的位置改變連接到幀的位置chande。 奇特的是我沒有移動指南針框架的代碼!

任何想法如何對付這個?

+0

關閉約束聽起來像是一個好開始......你的應用需要自動佈局嗎? – foundry 2013-02-16 12:54:57

+0

不,它不需要它。它只是肖像。當我發現如何關閉約束時,我確實已經開始工作。我如何將此帖標記爲已解決? – user2078203 2013-02-16 14:30:49

+0

我已經回答了這個問題,你可以勾選它。 – foundry 2013-02-16 14:36:23

回答

1

關閉自動佈局。選擇xib或故事板,然後在文件檢查器(第一個右側窗格)中有一個「使用自動佈局」複選框。取消選中它(默認爲開啓)。

然後你應該得到預期的結果。

除非您有理由使用它,否則應始終保持自動佈局關閉。