2014-09-27 78 views
0

我正在爲手錶編寫一個Android應用程序(ZGPAX S6)。非常小的屏幕,Android SDK 14的目標。我打算在頂部沒有標題欄或標籤的情況下運行此應用程序。這將是一個全屏應用程序 - 在1.54英寸的屏幕上的房地產是寶貴的。邏輯片段與實際片段

我有一個單一的佈局,但在應用程序中有10個或更多「屏幕」。 是否可以管理「邏輯片段」,而不是將所有內容都放在佈局xml文件中?

例如,我的屏幕都是「4上」 - 顯示網格中的4個數據段。我打算使用滑動手勢在該應用程序的一組邏輯屏幕之間移動。

  1. 4UP(畫面A)
  2. 4UP(畫面B)
  3. 4UP(畫面C) 等

現在我有一個單個活動,保持一個ArrayList 「屏幕」(一個標題和一種類型的數據)和一個佈局文件,它具有編碼到它的4up元素。我使用點擊處理程序移動到arraylist中的下一個點並重新繪製屏幕上的元素。數據元素本身正在從網絡連接中讀取,並在進入時刷新到屏幕上。這部分工作良好。

我想使用所有的屏幕過渡和我的手勢,使它看起來像這些屏幕的水平滾動列表,但只有其中一個...所以我會畫屏幕1,向右滑動即可到達屏幕2,向右滑動即可到達屏幕3等

應用程序的進展看起來是這樣的(僞):

onCreate{ 
    get handles to the elements of the layout 
    setupScreenData() - this sets up the arraylist of "screens" 
    run the network listener() - this starts a thread and connects to the activity via a Handler 
} 

//this happens when I get data from the network 
handleMessage{ 
    //this combines data in the screens array with data sent back from the network 
    refreshScreenData() 
} 

onClick{ 
    increment the pointer in the screen array 
} 

回答

1

事實證明,邏輯屏幕被稱爲「碎片」,你需要使用viewpager來獲得我正在尋找的行爲。這裏是描述我使用的那一刻什麼方向的SO職位:

How to implement a ViewPager with different Fragments/Layouts

+0

此外,還要爲一切都是「常用」屏幕中的功能抽象類片段。然後擴展這個類併爲每個屏幕自定義。 – 2014-10-06 14:43:58

+0

現在我遇到的一件事是,我有一個片段可以繪製到屏幕和一個在它們之間滑動的viewpager。就像這個例子。現在我不知道如何「進入」其中一個片段來更新其中的文本視圖... – JuddGledhill 2014-10-06 14:59:41

+0

@ S.D。我接受了您的建議,並繼續沿着應用程序進行了一些改進現在我試圖獲得當前屏幕片段的可靠處理。我在這裏發佈的問題和代碼,如果你想看看... http://stackoverflow.com/questions/26347217/calling-methods-on-the-current-fragment-in-a-viewpager-from-activity – JuddGledhill 2014-10-13 19:14:13