Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/199.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 将布局保存回xml_Android_Xml_Android Layout - Fatal编程技术网

Android 将布局保存回xml

Android 将布局保存回xml,android,xml,android-layout,Android,Xml,Android Layout,我正在处理一个有多个选项卡的项目,我希望根据上一个选项卡中选择的内容动态设置每个选项卡的内容。(对于我的选项卡,我正在使用带有查看页面的滑动布局)。目前,我已正确设置了第一个选项卡,并将其绑定到一个EventBus,该总线基于我在R.layouts.tab_2中的模板创建一个LinearLayout,并动态添加内容。我不太清楚的是如何将我的LinearLayout保存回tab_2.xml文件中。我看到过使用SharedReferences保存它的建议,但这不允许我将它保存为正确的文件类型 如果有

我正在处理一个有多个选项卡的项目,我希望根据上一个选项卡中选择的内容动态设置每个选项卡的内容。(对于我的选项卡,我正在使用带有
查看页面的
滑动布局
)。目前,我已正确设置了第一个选项卡,并将其绑定到一个
EventBus
,该总线基于我在
R.layouts.tab_2
中的模板创建一个
LinearLayout
,并动态添加内容。我不太清楚的是如何将我的
LinearLayout
保存回
tab_2.xml
文件中。我看到过使用
SharedReferences
保存它的建议,但这不允许我将它保存为正确的文件类型


如果有一种更简单的方法可以做到这一点,比如更新已经创建的选项卡,那么我愿意这样做,而不是将布局保存回
XML
文件。我对Android Studio编程相当陌生,但仍在尝试了解基本知识。

我解释的第一个选项卡本质上是一个设置页面。用户只做了几件事,因此,第二个选项卡上的布局看起来不同

您需要根据用户交互保存一些变量。例如,如果您有一个用户将要按下的复选框,则当用户选中该复选框时,您会将布尔值设置为true,当用户取消选中该复选框时,您会将布尔值设置为false。当用户导航到第二个选项卡时,您将检查该布尔值,并相应地更改布局


希望这个概念即使简单,也能帮助您理解应用程序是如何实现功能的。

您不需要通过编程将布局保存到xml文件中。没有这样做的机制。当您将它们打包到apk中时,它们甚至不是xml文件,它们是为了提高效率而预编译的。有没有更好的方法保存布局或将其发送到已创建的片段?我完全理解面向对象编程背后的概念。我多年来一直在用C#写申请书。从逻辑的角度来看,我知道5种方法来做我想做的事情,但我上周才开始使用安卓Studio,我仍在试图弄清楚所有事情的流程。我试图在创建片段时检查这些值,但是我得到了一个错误,因为它是在用户输入之前创建的。我尝试了一个onFocusChanged侦听器,但当我更改选项卡时,它从未触发。我想我需要的是当它获得焦点时如何更新标签。我删除了我帖子的这一部分。关于您所说的,我将研究片段生命周期,以便更好地理解其工作原理。在ViewPager中,我相信这些片段在滑动时会重新膨胀,这意味着您需要将这些变量存储在活动区域中,如包围活动。您还可以扩展应用程序类并在其中全局存储变量。谢谢Evan。该片段在刷卡时不会重新膨胀(或者至少不会经历我在
onCreateView
中的内容),但至少我朝着正确的方向前进。好吧,酷,在这种情况下,您只需覆盖
onResume()
并更新其中的布局即可。很高兴你明白了。