2013-01-03 109 views
0

我有一個應用程序顯示登錄屏幕作爲第一個活動。確定運行時的啓動活動

由於我的應用程序中有一些新的語言功能,我現在想要選擇性地顯示一個'選擇語言屏幕',允許用戶在顯示登錄屏幕之前選擇一種語言。

根據指示有效語言的應用程序設置,我想要顯示登錄屏幕或語言屏幕(假定有多種語言可供選擇)。

據我所見,我有3個選項。

  1. 我可以創建一個閃屏活動,這是一個空白屏幕。此活動可以確定是顯示語言屏幕還是登錄屏幕,並開始活動。

  2. 我已經對應用程序對象進行了分類,所以我猜測我可以直接從應用程序的OnCreate方法中觸發相關活動?

  3. 總是顯示語言選擇屏幕作爲第一個活動,如果不需要,只需啓動登錄活動。

我想知道是否有這樣做的首選方式?

回答

0

如何將登錄屏幕顯示爲第一個屏幕,並添加用戶可以訪問的首選項活動以選擇不同的語言。

+0

這不起作用,因爲登錄屏幕不會顯示要求輸入用戶名/密碼(或首選項)的翻譯文本。語言選擇必須是第一個屏幕,並且只包含語言名稱。 –

+0

你能向我解釋更多嗎 –

+0

那麼,用戶選擇他們的語言的全部要點是,它可以顯示帶有翻譯文本的屏幕,如果你馬上顯示PIN屏幕,這將包含可能的外語文本。 –

0

我無法與選項1或2交談,但我使用了類似於選項3的方法。在您的語言選擇活動的onCreate中,如果您確定不需要,只需開始登錄活動的意圖。這將在視圖呈現之前運行,所以用戶將永遠不會看到它。

1

爲什麼你不能在你的登錄屏幕上顯示一個不可取消的對話框?您可以假定英語是默認語言,如果用戶更改它,則可以根據需要重新啓動活動或自行更改字符串。

第二種方法不起作用,因爲您需要有一個以應用程序開始的活動;您不能只啓動android.app.Application實例。

+0

我正在尋找一個完整的方式來做到這一點,並希望我的選擇2可能。我已經結束了使用選項3,因爲這使我能夠正確控制流量。 –

+0

海事組織這個選項更整齊,更少資源,尤其是,如果你使用'DialogFragment'。您可能只會在應用程序第一次啓動時才顯示語言選擇屏幕,因此每次都打開「鬼魂」活動效率不高。 這就是說,它仍然可以工作,並且可能不會被用戶注意到。 –

+0

此外,您還可以使用基於Android系統語言的默認語言(http://developer.android.com/guide/topics/resources/localization.html) –