2014-09-27 76 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