Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/196.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_Android Fragments_Orientation_Fragment_Sliding - Fatal编程技术网

Android 更改方向时使用片段的最佳方法

Android 更改方向时使用片段的最佳方法,android,android-fragments,orientation,fragment,sliding,Android,Android Fragments,Orientation,Fragment,Sliding,几天来我一直在寻找碎片。我找不到任何关于我的案例的例子或问题。在我的例子中,方向改变和保存状态是非常重要的 在应用程序中,将有许多步骤。对于每个步骤,在纵向模式下都会有一个片段。用户将在其上滑动以进行下一步。但在横向模式下,所有步骤将仅在一个屏幕上。无滑动。方向更改时,应保存状态。在使用应用程序期间,用户将随时更改方向 有人能给我举个例子吗 我目前的做法是: 肖像:许多碎片 对于横向:只有一个片段,而这不是纵向片段。您可以在res文件夹中创建一个文件夹,并具有纵向模式布局和横向模式布局 至于保存

几天来我一直在寻找碎片。我找不到任何关于我的案例的例子或问题。在我的例子中,方向改变和保存状态是非常重要的

在应用程序中,将有许多步骤。对于每个步骤,在纵向模式下都会有一个片段。用户将在其上滑动以进行下一步。但在横向模式下,所有步骤将仅在一个屏幕上。无滑动。方向更改时,应保存状态。在使用应用程序期间,用户将随时更改方向

有人能给我举个例子吗

我目前的做法是: 肖像:许多碎片
对于横向:只有一个片段,而这不是纵向片段。

您可以在res文件夹中创建一个文件夹,并具有纵向模式布局和横向模式布局


至于保存数据,请参见OnSavedInstanceState和OnRestoreInstanceState。屏幕翻转时会调用这些方法,因此,如果您有数据,则必须将其保存在OnSavedInstanceState中,然后在OnRestoreInstanceState中恢复。

请每次回答一个问题(我建议编辑以删除第二个问题)。片段的生命周期与活动类似,因此您可以使用相同的onPause/onResume覆盖来保存您的状态,就像您习惯于从活动保存状态一样。请参阅此链接,其中解释了在方向更改期间保留数据的一种方法@我编辑了我的问题。是的,我知道。但主要的问题是在一个屏幕上以横向模式显示所有片段。我提到它是因为我不想让任何人给我举一个状态丢失的例子。你有没有考虑过在res文件夹中创建一个文件夹,比如(布局端口),然后将布局放置在纵向模式,然后将横向布局放置在常规布局文件夹中?@eenvicible是的,我试过了。但我无法拯救各州。