Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/201.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,我想能够改变布局时,一个设备是重新定向到横向或纵向。出于速度和资源方面的考虑(以及适用于我的应用程序的其他问题),我不希望我的应用程序被销毁并重新启动。我有几个对象,我希望在方向更改之间保留,因为销毁和重新创建它们没有任何好处!我只是想改变一些按钮和文本视图的位置,使它们适应当前的方向。简单,对吗 不,不是。为了实现上述目标,我在应用程序清单中包含了方向更改的configChange选项。然后我实现了onConfigurationChanged(),在这里我确定并应用了适当的布局。简单是吗 但是

我想能够改变布局时,一个设备是重新定向到横向或纵向。出于速度和资源方面的考虑(以及适用于我的应用程序的其他问题),我不希望我的应用程序被销毁并重新启动。我有几个对象,我希望在方向更改之间保留,因为销毁和重新创建它们没有任何好处!我只是想改变一些按钮和文本视图的位置,使它们适应当前的方向。简单,对吗

不,不是。为了实现上述目标,我在应用程序清单中包含了方向更改的configChange选项。然后我实现了onConfigurationChanged(),在这里我确定并应用了适当的布局。简单是吗

但是现在看看我的布局中的文本视图。实际上,使用这种特殊的方法来响应方向的变化,我是如何将上一个textview中的相同文本放到新的textview中的?没有实例数据传递给onConfigurationChanged()方法。此外,对于某些按钮,它们可以被禁用或启用。。。在定向改变后我需要知道这一点

如果我让Android破坏并重新启动我的活动,它首先会产生不必要的工作。我只想移动几个按钮和文本视图。。不要重新启动整个应用程序。那太可笑了


有人能帮我实现我的需求吗?

维护配置无关数据的一个简单方法是使用及其配套方法。只需返回一个对象,该对象包含重新创建活动时要重用的所有数据


在蜂巢中,或者如果您使用的是Android兼容软件包,您可以直接调用。请参阅文档。

我尝试了onRetainonConfiguration实例(),但不幸的是,它只对数据有用。我需要在方向更改之间维护一个特定的对象(它是一个维护网络连接的对象)。我在onDestroy()中销毁了该对象(因为这在应用程序退出时是必要的),因此,该对象在方向更改时也会被销毁。我想我需要一种方法来确定这是应用程序退出还是应用程序重新定向。您可以在调用OnRetainonConfiguration实例时设置一个标志,以指示活动正在重新定向。