ProgressBar выглядит странно после перезагрузки - PullRequest
3 голосов
/ 17 февраля 2012

Итак, у меня есть приложение, которое проверяет различные требования, и процесс проверки отображается с помощью ProgressBar.При первом запуске все выглядит так, как должно.Однако, если я запускаю другое действие с startActivityForResult() (в данном случае с настройками специальных возможностей), приложение снова инициализирует весь процесс, но как-то оба ProgressBars выглядят очень странно ( см. Видео ниже ).

Макет:

<LinearLayout
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_margin="20dip"
    android:layout_marginLeft="20dip"
    android:layout_marginTop="20dip"
    android:orientation="horizontal"
    android:paddingLeft="5dip" >

    <FrameLayout
        android:layout_width="48dip"
        android:layout_height="fill_parent" >

        <ImageView
            android:id="@+id/checkImage2"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:scaleType="centerInside"
            android:visibility="invisible" />

        <ProgressBar
            android:id="@+id/checkProgess2"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:visibility="visible" />
    </FrameLayout>

    <TextView
        android:id="@+id/checkText2"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_marginLeft="5dip"
        android:gravity="center_vertical"
        android:text="Checking for Service..." />
</LinearLayout>

Инициализация (после OnCreate и OnActivityResult)

 private void initActivity() {
    imageRoot.setVisibility(ImageView.INVISIBLE);
    imageService.setVisibility(ImageView.INVISIBLE);
    progRoot.setVisibility(ImageView.VISIBLE);
    progService.setVisibility(ImageView.VISIBLE);
    textRoot.setText("checking for root..."); //TODO
    textService.setText("checking for service..."); //TODO
    layoutInfo.setVisibility(LinearLayout.GONE);

    setResult(Activity.RESULT_CANCELED);        
    CheckForRoot checkRootTask = new CheckForRoot();
    checkRootTask.execute(AppName.valueOf(getIntent().getStringExtra(APPNAME)));
}

У васесть идеи, в чем причина проблемы?

Посмотрите видео

1 Ответ

0 голосов
/ 17 февраля 2012

Хорошо, у меня получилось работать с изменением FrameLayout

    android:layout_height="fill_parent"

на

    android:layout_height="48dip"

Тем не менее, я понятия не имею, почему это произошло - если вы знаетепочему, пожалуйста, дайте мне знать!

...