У меня есть ViewPager и ActionBar с вкладками. Одна из этих вкладок имеет ListView, и когда я использую один из параметров в этом ListView, я добавляю дочерний фрагмент, который является подробным представлением для этой строки.
Этот подробный вид представляет собой ScrollView с LinearLayout внутри него. ScrollView - match_parent/match_parent
, а LinearLayout внутри - width=match_parent
и height=wrap_content
. На эмуляторе размера телефона детальный вид заполняет экран по своему желанию, но на планшете подробный вид охватывает только часть ширины экрана... хотя ширина ScrollView и ширина LinearLayout оба match_parent.
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/rootView" style="@style/RootScrollView">
<LinearLayout android:id="@+id/scrollContentView" style="@style/ScrollViewContent">
...
</LinearLayout>
</ScrollView>
Вот стиль прокрутки:
<style name="RootScrollView">
<item name="android:layout_width">match_parent</item>
<item name="android:layout_height">match_parent</item>
</style>
Вот стиль для контента LinearLayout:
<style name="ScrollViewContent">
<item name="android:layout_width">match_parent</item>
<item name="android:layout_height">wrap_content</item>
<item name="android:paddingLeft">15dp</item>
<item name="android:paddingRight">15dp</item>
<item name="android:orientation">vertical</item>
<item name="android:background">@drawable/image_legal_paper_tile</item>
</style>
В представлении содержимого есть повторяющийся фон image_legal_paper_tile
, который:
<?xml version="1.0" encoding="utf-8"?>
<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
android:src="@drawable/legal_paper_tile"
android:gravity="fill_horizontal"
android:tileMode="repeat" />
Итак, изображение должно растягиваться горизонтально и повторяться, что создает желтую легальную бумажную панель в фоновом режиме.
Это то, что список и подробный вид выглядят как эмулятор телефона:
Вот что выглядит список и подробный вид на реальном планшете. Желтый юридический фрагмент площадки ДОЛЖЕН заполнять всю ширину экрана, но это не так.
EDIT:
Вот фоновая документальная фотография:
Это 320 пикселей шириной. Эмулятор телефона имеет ширину 480 пикселей, и изображение правильно растягивается, чтобы заполнить ширину экрана. Затем он повторяется вертикально по назначению. Однако он не растягивается, чтобы заполнить ширину экрана на планшете.
Ширина, указанная на планшете, НЕ является внутренним размером изображения, поскольку она изменяет размер на основе содержимого. Когда первый фрагмент загружается, он имеет одну ширину. Затем я заполняю поля и выполняю расчет, который добавляет некоторый текст в нижней части содержимого. Этот текст шире, чем существующий контент, поэтому, когда текст установлен, ширина фрагмента увеличивается, чтобы поддерживать более широкий контент.
Итак, короче говоря, нет, ширина на планшете не является собственным размером изображения. Изображение растягивается, просто не растягивается полностью.