通常,在不确定Android设备的大小的情况下,设置手机模式与平板模式是很有必要的,在新闻类App平板展示中,经常会看到标题与内容在同一个页面上,但在手机上确是两个页面。
![双页面情况]()
1.通常同一个页面(Activity)可以对应一个Layout。如何在一个页面上实现两个页面的功能呢? 这是引入了Fragment的概念。

Fragment可以理解为小型的Activity,同样是一个页面对应一个Fragment, 但不同的是fragment可以屈居于activity之下,相当于一个组件(类似TextView,ImageView等等),可以多个fragment受控于一个activity。也就是说,Activity对应着用户所看到的一个页面,而它可以由Fragment分为几个不同的页面,最后就可以通过分别单独控制处于同一个activity的两个fragment来实现一个页面展现出两个页面的功能。

2.问题又来了,同一个App,在较大屏幕的时候,一屏双面比较合理,较小屏的时候一屏一面较为合理,这该怎么设置呢?

这就需要使用value里面的别名资源了。如图:

android adapter左右两个页面 安卓手机两个界面_android

设置两个相同名字的values,一个设置屏幕宽度,设置相同名字对应不同的layout,即可实现此功能。

3.同一页面多个fragment,必然存在着交互的关系,例如左侧新闻标题,在点击某一个标题后势必要让右侧出现对应的内容,这又该如何实现呢?

Fragment存在的意义之一就是希望可以独立地处理一部分的内容,如果处于同一个activity的Fragment互相调用函数,互相限制,势必会影响后续的开发,影响到Fragment的独立性,因此,涉及到Fragment交互的内容最好委托给托管Activity来实现,因此在Fragment开发中,需要设置interface来指挥托管Activity如何处理Fragment之间的交互。