2013-08-23 27 views
0

從「用戶體驗」的角度來看,我只是有趣的是禁用後退按鈕,並使一些條件成爲現實時出現另一個按鈕?當條件成立時,ios禁用後退按鈕是否是一種很好的用戶體驗?

示例我有3個視圖A,B,C。開始時條件= false。 我去A - > B。我改變了B中的東西,條件成真。在這種情況下,我想禁用可能性返回到視圖A,並使可能性進入視圖C.

所以我的問題是我怎麼能做到這一點?隱藏後退按鈕,並在這個地方使出現按鈕,使其能夠進入視圖C?或者只是禁用後退按鈕和啓用按鈕,我去哪裏去C?

回答

3

這對導航控制器不太有用。從這個用戶那裏拿走控制權絕不是一個好主意。允許他們以某種方式取消他們的選擇。這也不是導航控制器的正確隱喻。

沒有導航控制器的一種方法是在做出選擇時顯示一些先前隱藏的控件。查看設置應用程序,例如日期和時間,在進行選擇時顯示更多用戶界面。

+0

+1。與iOS中的慣用互動保持一致。 –

1

正如@nevanking所說,我也認爲這對用戶來說不是一個好的體驗,但是如果你需要它的話。

如果您使用的是標題爲「Back」的UIButton或條件爲「Go to c」,那麼您必須爲特定條件維護其標籤,因此在共同的IBAction中,您可以檢查特定的條件,並做彈出或推。即使您將圖像用於「返回」和「轉到c」選項,也可以執行相同的操作。

#define BACK_BUTTON_TAG 1 
#define PUSH_BUTTON_TAG 2 

方法設置標籤的基礎上你的病情,btn.tag = BACK_BUTTON_TAG;btn.tag = PUSH_BUTTON_TAG;

-(IBAction) doWhatIChoose { 
    if(btn.tag == BACK_BUTTON_TAG) { 
     //pop to A 
    }else{ 
     //push to C 
    } 
} 

需要注意的是,你要保持推viewcontrolles的堆棧,由C,你必須給用戶popToRoot的選項(即A)或返回(即B)並且必須保持按鈕狀態。

1

不。用戶希望按鈕能夠工作,BACK就像安全網 - 它必須在那裏。

我通常不喜歡禁用的按鈕,但是如果您使用它們,禁用的按鈕只會在您前進時啓用,例如下訂單或繼續進行一系列操作。

請注意,有些情況下iOS中的「後退」按鈕可以接受,但從不在左上角。這隻有當你有一個自定義的用戶界面,例如一系列的點,並且更早的模式不再有意義訪問。

+0

非常感謝,如果我推動控制器A(動畫) - > B(非動畫) - > C(動畫),那麼用戶有一種感覺,他/她沒有進入B.然後點擊「返回「,回到B(動畫)。這是好還是至少可以接受? – zyxel

+0

如果不確切地知道你的意思,很難回答。如果你正在討論左上角工具欄上的「

+0

它不能是「<返回」按鈕。標題可以是視圖的標題:「 zyxel

相關問題