我正在启动我的第一个真正的Android应用程序,并且我有一些初学者的问题。
我是一位经验丰富的C#开发人员,但这是我第一次使用Android。

我已经设计了屏幕,并且从第一个屏幕开始。 似乎应该有一种直截了当的方式来做我想做的...

数据模型非常简单:它是一个对象列表,每个顶级对象都包含一个子对象列表。 我希望第一个屏幕具有当前的顶级对象以及上一个和下一个按钮; 仅显示当前的顶层。 还显示该顶层的子对象。

当按下下一个或上一个按钮时,我想循环到下一个/上一个顶级对象,当然还要刷新子对象的列表。

我认为可以通过两个按钮(一个TextView和一个ListView或GridView)来完成,但是我想知道是否有更好的方法-也许我不知道该控件。 感觉我应该有一个适配器并将控件绑定到该适配器。

另外,可以在视图中完成所有操作吗? 碎片似乎在这里有些过分杀伤。 最后,拥有一个简单的对象层次结构,如:

public class SubObject {
    private String _name;
    ... other properties, get/set methods, etc.
}

public class TopLevel {

    private String _name;
    private List<SubObject> _subObjects;
    ....
}

任何帮助,建议或示例,不胜感激! 谢谢!

菲尔

===============>>#1 票数:1

我认为您的意思是可以在Activity中完成所有操作(视图是屏幕上的单个项目-单个按钮,单个文本视图等)。 是的,如果您不想有单独的屏幕区域,这些片段会给您不要使用它们,那就很好了。

当您想到Android时,它实际上并没有适配器。 它唯一的适配器用于将位置映射到ListView / GridView / ViewPager中的视图。 根本不用于其他视图。 但是您似乎有正确的做事方法。 您也可以使用Fragments和ViewPager来执行此操作,然后将片段切换到下一个/上一个按钮,每个片段将初始化一次。 但这是一个优先事项,两者都不对。

===============>>#2 票数:0

在Android中,建议的用于多级数据显示的UI模式是使用Master细节(和递归的sub-master-detail)布局,如此处所述。 如果选择遵循此模式,则必须使用片段以及ListViewFragementPagerAdapter才能完全实现。

但是,如果您选择使用简单的布局,例如:标题和带有下一个和上一个按钮的内容视图,则不需要片段。 您只需在按钮导航的标题和内容视图中替换数据即可。 对于数据,您可以使用数据库游标或您自己的数据模型类。

  ask by Phil Mar translate from so

未解决问题?本站智能推荐:

1回复

Unity应用程序在第一个android构建中仅调用一次jar

在使用$ adb logcat -s "app"和$ adb logcat -s Unity Terminal查看调试消息时,我注意到,当我第一次将应用程序构建到Android ( .APK )时,仅会查询一次 JAR文件。之后,我只run我的应用程序,未查询插件JAR文件。 这是为什么?
3回复

Android的EDITTEXT - 检测时,第一个非空输入的字符(也是最后一次删除)

我只想在Edittext输入第一个非空字符或删除最后一个非空字符时执行一种方法。 我想我必须使用TextWatcher但不确定逻辑。
3回复

我的第一个Android应用

此问题已从Stack Apps迁移,因为可以在Stack Overflow上得到解答。 迁移 8年前 。 了解更多 。 我正在构建我的第一个
1回复

Android:当我第一次单击按钮时,数组索引不显示我的第一个索引,但显示第二个索引

我正在Android上创建一个应用程序以查看带有声音的图像。当我第一次单击下一步按钮时,我遇到了问题,它没有显示我的第一个带有声音的索引图像,但显示了我的第二个索引。 我想在我第一次单击下一步按钮时显示我的第一个索引。
1回复

第一次计时器的Android应用

我是新来的Android开发人员,所以我正在遍历developer.android教程,一个不断困扰我的问题是,就像在教程的每个子部分中一样,它说“您themes.xml文件应该看起来像这样“,我想知道我每次前进课程时是否都替换文件,或者只是添加内容(我听到重复的错误,听起来很合法!),因为该教
1回复

第一次android应用程序错误

因此,这是香港专业教育学院第一次使用eclipse和android,并且正试图创建一个项目。 我按照步骤创建了一个新的android项目,以创建一个可在手机上使用的简单helloworld apk。 我自己没有添加任何代码,但是有很多错误,并且无法编译。 我不知道该怎么办,可以有人
5回复

我怎么知道一个Android应用程序是第一次加载的?

我如何确定应用程序在下载后是否首次加载。 我的意思是,当该应用首次从市场上购买/下载时,我如何看待这是第一次(从未在此手机上运行过)要运行,因此我可以进行一些注册活动吗? 是的,我想声明一个要检查的表,看它是否有任何行。 如果有行,那是因为它已被加载,所以我们插入了一行。 但我
3回复

将项目添加到ListView会导致第一个项目一次又一次出现

应用启动时,我从设备的SD卡中加载了一些对象,并将它们添加到ListView中。 当我加载对象时,我会反序列化该对象,检查它的唯一ID,如果它已经在Objects列表中,则不应该添加它。 我的方法LoadObjects load尝试加载具有给定扩展名的目录中的所有文件。 然后,如果成
2回复

我的第一个android应用崩溃并单击了一个按钮

我正在从官方android网站学习android。 以前,当我习惯在文本框中输入数据并单击一个按钮,然后将用于打印的数据打印在另一个屏幕上时,一切都很好。 但是在我尝试自定义代码之后,添加菜单选项。 该功能不再起作用。 当我单击按钮时,该应用程序立即崩溃。 谁能告诉我我要去哪里错了
1回复

在Android应用程序的列表视图中获取第一个位置的数据时出错

我正在开发一个android应用程序。我有一个列表视图,其中我有5个项目。每个项目上的dere有5种不同的视图。在我第一个项目上,我已经制作了一个注册表格。当我单击第二个项目时,我想要那个应该显示注册表格,即应该显示第一项上的数据。可以吗?如果可以,任何人都可以指导我...如何实现此目标。