iOS開發 關於某乙個View的強制橫屏

2021-10-04 15:06:44 字數 1883 閱讀 5741

因為螢幕旋轉感覺比較麻煩,所以,極少做旋轉的情況。這次,嘗試做做旋轉,總體感覺還行,比單一橫屏要多一些事情要處理,但是,寫**的過程中發現:橫屏與豎屏並不一定要完全保持所有的元素一樣,比如,有些元素並不完全適合豎屏,或者說會帶來很大的工作量,就可以簡化。本著橫屏與豎屏分別處理的原則,就好辦多了。畢竟,對於使用者來說,可以任意旋轉,喜歡哪個旋一下就行,特殊情況必須使用時,那就忍一下小小的區別,應該不是什麼大問題。

可是,遇到乙個新問題,某一view只能使用橫屏,豎屏很難做,或者要調整的東西太多太煩,找找強制橫屏的辦法。搜了一下,有些好像不起作用,該轉的時候轉,不該轉的時候也轉。找到乙個基本能用的,基本**如下:

- (void)inte***ceorientation:(uiinte***ceorientation)orientation {

if([[uidevice currentdevice] respondstoselector:@selector(setorientation:)]) {

selselector             = nsselectorfromstring(@"setorientation:");

nsinvocation *invocation = [nsinvocation invocationwithmethodsignature:[uidevice instancemethodsignatureforselector:selector]];

[invocation setselector:selector];

[invocation settarget:[uidevice currentdevice]];

nsinteger val                  = orientation;

// 從2開始是因為0 1 兩個引數已經被selector和target占用

[invocation setargument:&val atindex:2];

[invocation invoke];

- (uiinte***ceorientationmask)supportedinte***ceorientations {

returnuiinte***ceorientationmasklandscaperight;

- (uiinte***ceorientation)preferredinte***ceorientationforpresentation {

returnuiinte***ceorientationlandscaperight;

- (bool)shouldautorotate {

returnno;

[self inte***ceorientation:uiinte***ceorientationlandscaperight];

上述**基本可以保持橫屏狀態,可是左右不分,最近一直在旋轉,這樣死死的保持乙個方向,有點不喜歡,起碼左右橫屏應該能夠適應,所以,不太想用,幾次嘗試改進,沒有找到有效的方法。

突然,想到了404,也是不錯的想法,為了避免旋轉到豎屏出現的混亂尷尬的介面,加蓋乙個404的view,使用者看到這個404,想必會自己再旋轉回去吧!

反正就是不讓使用者在這個view旋轉到豎屏,蓋住也行吧,效果圖如下。自己感覺比死死的保持乙個方向要舒服,當然,蘋果審核不知道能不能通過,試試,不行再改回來。

補充:審核已經通過了,但不能確認審核人員是否看到了這個404頁面,畢竟只是其中乙個view。

新增某乙個圓角,和某乙個邊框

為所有uiview的繼承類,切割圓角,新增任意邊框 因為這兩個功能未必要同時使用,所以是分開的兩個檔案 圓角 需要 import uiview gfcorner.h 使用 如下 img cornerwithradius 10 direction cornerdirectiontypebottom c...

使用git合併某乙個版本的某乙個分支

使用命名 使用場景 我們有個穩定版本的分支,叫v2.0,另外還有個開發版本的分支v3.0,我們不能直接把兩個分支合併,這樣會導致穩定版本混亂,但是又想增加乙個v3.0中的功能到v2.0中,這裡就可以使用cherry pick了,其實也就是對已經存在的commit 進行再次提交.使用說明 git ch...

遍歷某乙個程序的模組

include stdafx.h include include include bool getmodulelist dword dwpid 1.建立乙個模組相關的快照控制代碼 hmodulesnap createtoolhelp32snapshot th32cs snapmodule,指定快照的...