Странное поведение перерисовки в Android - PullRequest
1 голос
/ 29 февраля 2012

Я использую пакет поддержки Android v4 и следующий макет, чтобы показать прокручиваемую панель вкладок + соответствующие скользящие просмотры контента:

<?xml version="1.0" encoding="utf-8"?>
<TabHost
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@android:id/tabhost"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">

<LinearLayout
            android:orientation="vertical"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent">
    <LinearLayout
                android:orientation="horizontal"
                android:layout_width="fill_parent"
                android:gravity="center_vertical"
                android:layout_height="wrap_content">
        <HorizontalScrollView
                            android:layout_width="wrap_content"
                            android:id="@+id/horizontalScrollView"
                            android:orientation="horizontal"
                            android:layout_height="wrap_content"
                            android:fillViewport="true"
                            android:scrollbars="none">
            <TabWidget
                    android:id="@android:id/tabs"
                    android:orientation="horizontal"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"/>

        </HorizontalScrollView>
    </LinearLayout>
    <FrameLayout
            android:id="@android:id/tabcontent"
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:layout_weight="0"/>
    <android.support.v4.view.ViewPager
            android:id="@+id/viewPager"
            android:layout_width="fill_parent"
            android:layout_height="0dp"
            android:layout_weight="1"/>
</LinearLayout>
</TabHost>

Хорошо работает, скажем, 90%, но 10% - это просто не перерисовывает пользовательский интерфейс. Даже недействительность элементов не решает проблему. Теперь самое странное: после блокировки и повторной блокировки телефона все отображается, как и ожидалось, и работает как шарм.

Например: Я добавляю новую вкладку + фрагмент. - Tab + Fragment добавлены, все методы на них вызваны, но пользовательский интерфейс просто черный. блокировка + разблокировка = все снова в порядке.

Обработка ввода пользователя для фрагмента. (См. Фото) Userinput on Fragment

Примечание: Я уже проверил недействительность всех элементов, это не работает.

Что еще я могу сделать, чтобы решить эту проблему?

Заранее спасибо

1 Ответ

0 голосов
/ 07 марта 2012

Произошла утечка памяти на вкладке.

...