Change page layout dynamically based on orientation

If you want to display pages in double-page mode in landscape mode and single-page mode in portrait mode, you can do so with the following snippet:

class DynamicPageLayoutActivity : PdfActivity() {
override fun onCreate(savedInstanceState: Bundle) {
val isLandscape = resources.configuration.orientation == ORIENTATION_LANDSCAPE
val pageLayoutMode = if (isLandscape) PageLayoutMode.DOUBLE else PageLayoutMode.SINGLE
val newConfiguration = PdfActivityConfiguration.Builder(configuration)
.layoutMode(pageLayoutMode)
.build()
configuration = newConfiguration
// Make sure to call super on the parent `PdfActivity`.
super.onCreate(savedInstanceState)
}
}

Note that the PageLayoutMode#AUTO setting leads to similar behavior, where double-page mode is enabled in landscape mode, but only for devices with a screen width larger than 540dp (e.g. tablets).