Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/wix/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在android中制作交互式布局的最佳方法_Android - Fatal编程技术网

在android中制作交互式布局的最佳方法

在android中制作交互式布局的最佳方法,android,Android,在我的申请表中,我有一个表格需要填写,其中包含10-15个字段。因此,我认为与其一次显示所有10-15个字段,不如让它具有交互性 我希望它像: 应用程序:问题1作为文本 用户:editText中的回答1 应用程序和用户将显示各自的图像视图 根据答案,将显示第二个问题 方法1:将所有ImageView、TextView和EditText字段可见性设置为false,并在回答上一个问题后使其可见(下一个问题文本将取决于答案) 实际上,我这样做了,但没有什么问题: 问题1:我将布局设置为ScrollVi

在我的申请表中,我有一个表格需要填写,其中包含10-15个字段。因此,我认为与其一次显示所有10-15个字段,不如让它具有交互性

我希望它像:

应用程序:问题1作为文本

用户:editText中的回答1

应用程序和用户将显示各自的图像视图

根据答案,将显示第二个问题

方法1:将所有ImageView、TextView和EditText字段可见性设置为false,并在回答上一个问题后使其可见(下一个问题文本将取决于答案)

实际上,我这样做了,但没有什么问题:

问题1:我将布局设置为ScrollView,因此用户可以滚动到布局的底部(视图不可见),这告诉用户这是一个长表单,视图不可见

问题2:所有问题都是文本视图,但所有答案字段都不是EditText,有些是微调器,有些是复选框。因此,根据前面的答案,如果我必须显示微调器或复选框,则无法工作(如果我跳过任何不可见视图并转到下一个视图,则会产生空白)

方法2:动态创建所有视图(我相信这需要一些时间,这又是一个用户体验问题)


有没有更好的方法来实现我想要的??如果有解决方案,请让我知道如何解决我的问题1和问题2。最简单的方法是向导/问卷的每个“部分”可以是单独的活动

但是,对于此类任务,我更喜欢在同一活动中添加和删除元素


您可能需要考虑的另一点是导航,即不仅要继续下一个问题,还要回到上一个问题。跟踪单个活动中的状态并不太糟糕,但是切换到上一个活动可能会更简单,因为每个活动只跟踪其下一个和上一个活动。

最简单的方法是向导/问卷的每个“部分”都可以是单独的活动

但是,对于此类任务,我更喜欢在同一活动中添加和删除元素


您可能需要考虑的另一点是导航,即不仅要继续下一个问题,还要回到上一个问题。跟踪单个活动中的状态并不太糟糕,但是切换到上一个活动可能会更简单,因为每个活动只跟踪其下一个和上一个活动。

使用而不是创建不可见的视图。这样它就不会占用布局上的任何空间。

使用而不是创建不可见的视图。这样它就不会占用版面上的任何空间。

你的意思是每个问题都必须是一个新的活动???这样,如果用户想看到他回答了以前的问题,他需要多次按后退按钮。这取决于你如何布置它,正如我说的,你可以使用多个活动,你可以在一个活动中完成,这完全取决于您,我不认为这是一个最佳实践,而是一个设计决策,即您希望您的用户如何与应用程序交互。第二点是……“但是,对于此类任务,我更喜欢在同一活动中添加和删除元素。”你的意思是动态添加和删除视图??它可以动态添加和删除视图,可以使用
ViewFlipper
,这也可以让你对每个问题进行动画处理,你可以用很多不同的方式来做。ViewFlipper文档在这里你的意思是每个问题都必须是一个新的活动???这样,如果用户想看到他回答了前面的问题,他需要多次按下后退按钮,这取决于你如何安排它,正如我说的,你可以用多个活动来完成,你可以在一个活动中完成,这完全取决于您,我不认为这是一个最佳实践,而是一个设计决策,即您希望您的用户如何与应用程序交互。第二点是……“但是,对于此类任务,我更喜欢在同一活动中添加和删除元素。”你的意思是动态添加和删除视图??它可以动态添加和删除视图,可以使用
ViewFlipper
,这也可以让你对每个问题进行动画处理,你可以用很多不同的方式来做。ViewFlipper文档在这里