Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/219.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/14.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_Xml_Android Layout_Layout - Fatal编程技术网

Android 为一个活动创建多个布局文件还是以编程方式更改布局更好?

Android 为一个活动创建多个布局文件还是以编程方式更改布局更好?,android,xml,android-layout,layout,Android,Xml,Android Layout,Layout,我目前正在为一个应用程序创建一个测验部分。这是它的大部分外观: 我的问题是,每个问题的答案数量可能从2-4个不等。我可以看到两种解决方案: 创建具有正确答案数的多个布局。当用户转到下一个问题时,我会根据该问题的答案数量更改布局 为活动设置一个布局。确定一个问题有多少答案,并以编程方式更改布局 这两种方法中哪一种更好,或者有更好的替代方法?解决问题的最佳方法是使用列表视图或回收视图,因为这些组件是动态的,可以完美地显示0到n个视图 列表视图: RecyclerView: 使用后,您可以控制用户单

我目前正在为一个应用程序创建一个测验部分。这是它的大部分外观:

我的问题是,每个问题的答案数量可能从2-4个不等。我可以看到两种解决方案:

  • 创建具有正确答案数的多个布局。当用户转到下一个问题时,我会根据该问题的答案数量更改布局
  • 为活动设置一个布局。确定一个问题有多少答案,并以编程方式更改布局

  • 这两种方法中哪一种更好,或者有更好的替代方法?

    解决问题的最佳方法是使用
    列表视图
    回收视图
    ,因为这些组件是动态的,可以完美地显示0到n个视图

    列表视图

    RecyclerView


    使用后,您可以控制用户单击的时间。

    解决问题的最佳方法是使用
    列表视图
    回收视图
    ,因为这些组件是动态的,可以完美地显示从0到n个视图

    列表视图

    RecyclerView


    使用后,您可以控制用户单击的时间。

    使用recyclerview

    使用recyclerview

    第二种方法肯定更好


    为什么??因为在第一种方法中,您将为每个问题扩展整个布局。使用第二种方法,您只需更改的内容,其适配器就会发布您的答案。

    第二种方法肯定更好


    为什么??因为在第一种方法中,您将为每个问题扩展整个布局。使用第二种方法,您只需更改的内容,其适配器就会发布您的答案。

    如何更好?两者都有优点和缺点。如何更好?两者都有优点和缺点。