ios橫豎屏解決方案

2021-06-18 16:47:19 字數 2496 閱讀 3671

«

ios生成pdf,並且以郵件的方式傳送出去

利用itouch看pdf、word、powerpoint文件 »

ios橫豎屏的效果是不相同的,其效果也是不一樣的。所以我們在開發中如果允許螢幕橫豎屏間的切換,那麼我們就要調整檢視的布局。利用inte***ce builder開發,我們可以快速的拖拽出合適的介面布局,但是螢幕自動切換布局不能很好的適配,下圖是,沒有做任何調整的狀態下,實現的橫豎屏切換,可以看到介面不是很美觀。

目前我所知的實現ios橫豎屏切換的解決方案共有三種:

在ios中,橫豎屏切換時,會呼叫下面函式:

- (bool)shouldautorotatetointe***ceorientation:(uiinte***ceorientation)inte***ceorientation

if (inte***ceorientation==uiinte***ceorientationlandscaperight)

if (inte***ceorientation==uiinte***ceorientationportrait)

if (inte***ceorientation==uiinte***ceorientationportraitupsidedown)

return yes;

}

返回yes表示切換螢幕,返回no是不能向相應的方向切換檢視。

下面分別介紹一下三種方法,第一種方法最簡單,但是效果是最差的,我們只需用inte***ce bulider修改相應的屬性即可。實現的效果如下:

實現的方法:

選中控制項,按command+3,上圖紅框部分的紅線表示距離不能自動適配,要是虛線表示距離可以自動適配。我們選擇可以自動適配,最後的結果就如上圖。

第二中方法:

@inte***ce ipad_demooviewcontroller : uiviewcontroller

@property (nonatomic,retain) uibutton *mybutton1;

@property (nonatomic,retain) uibutton *mybutton2;

@property (nonatomic,retain) uibutton *mybutton3;

@property (nonatomic,retain) uibutton *mybutton4;

@property (nonatomic,retain) uibutton *mybutton5;

@property (nonatomic,retain) uibutton *mybutton6;

@end

更改每乙個控制項的布局:

- (bool)shouldautorotatetointe***ceorientation:(uiinte***ceorientation)inte***ceorientation

if (inte***ceorientation==uiinte***ceorientationlandscaperight)

if (inte***ceorientation==uiinte***ceorientationportrait)

if (inte***ceorientation==uiinte***ceorientationportraitupsidedown)

return yes;

}

第三種方法是建立兩個檢視,下面看一下實現過程:

首先建立兩個檢視:

iboutlet uiview *hview;

iboutlet uiview *vview;

建立相應的@property方法.

然後在ib中在複製乙個view。

把乙個檢視做橫屏時的布局,乙個view做豎屏時的布局。把相應的view和相應的方法相連線,在設定乙個預設檢視為view。

下面就是**實現:

- (bool)shouldautorotatetointe***ceorientation:(uiinte***ceorientation)inte***ceorientation

if (inte***ceorientation==uiinte***ceorientationlandscaperight)

if (inte***ceorientation==uiinte***ceorientationportrait)

if (inte***ceorientation==uiinte***ceorientationportraitupsidedown)

return yes;

}

實現的效果如下:

上述就是我目前知道的三種橫豎屏解決方案,我們可以看到第三種比較簡單,但是編寫比較麻煩,實現複雜邏輯比較麻煩,第二種方法實現起來不直觀,除錯比較麻煩,但是效果最好。

源**:

ipad橫豎屏切換解決方案

由於ipad的橫豎屏不同,所以好的應用,橫豎屏的頁面布局也不一樣。那麼就需要橫豎屏的整體解決方案。先看乙個橫豎屏布局不一樣的介面。橫豎版顯示的內容相同,但是介面布局不同。要實現上述布局,主要是運用uiview中layoutsubviews方法。當uiview設定為自動適配螢幕時,當使用者旋轉裝置的時...

android 橫豎屏切換問題的解決方案

只豎屏顯示的話 android screenorientation portrait 只橫屏顯示的話 android screenorientation landscape 畫面重新載入問題 在預設情況下橫豎 切換時會重新載入畫面,導致一些不必要的資源浪費,更嚴重的是畫面上保持的資料 特別是遊戲方面...

iOS 橫豎屏適配

使用版本 ios 8 純 適配 手寫兩套約束來適配橫屏豎屏。個人很少用 uitraitcollection 使用 xib 或者 storyboard 自適應適配 例子 現在有兩個 uibutton 和乙個 uilabel 在豎屏時需要按鈕1在螢幕中心,按鈕2顯示在左上角,標籤 17號字 和按鈕水平居...