无法使Android ProgressBar显示为水平定界符

时间:2019-04-03 07:13:57

标签: android android-progressbar

无论我做什么,我只会得到小的圆形不确定进度条。我需要的是水平确定的。我在代码中显式尝试了setIndeterminate(false),设置了最大值和初始进度,将其预先设置为可见,将样式显式设置为@android:style / Widget.ProgressBar.Horizo​​ntal或style / Widget.AppCompat.ProgressBar.Horizo​​ntal-什么都没有帮助下,滚动条保持不确定的圆圈。在Studio设计预览中,它可以正确显示为水平进度(在可见时)。 请问我可能在哪里错了?

Android版本是5.0。

版面摘录:

<ProgressBar
    android:id="@+id/loadingProgress"
    style="?android:attr/progressBarStyleHorizontal"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentStart="true"
    android:layout_alignParentTop="true"
    android:indeterminate="false"
    android:visibility="gone"
    />

代码段(删除了空格和不相关的代码):

    ProgressBar pbLoading;
    public void onCreate( Bundle _savedInstanceState ) {
    /* ... */
        pbLoading = findViewById( R.id.loadingProgress );
    /* ... */
    }
    public void onStartLoading() {
        pbLoading.setVisibility( ProgressBar.VISIBLE );
        pbLoading.setMax( 100 );
        pbLoading.setProgress( 0 );
    }
    public void onLoadProgress( double _progress ) {
        pbLoading.setProgress( (int)Math.round( _progress * 100 ) );
    }
    public void onDataLoaded() {
        fDataLoaded = true;
        pbLoading.setVisibility( View.GONE );
    }

1 个答案:

答案 0 :(得分:0)

问题描述不完整。该应用程序使用了老式的方法,将其大部分逻辑放置在库项目中,并覆盖了应用程序项目中的各个方面。因此,事实证明该布局被应用程序项目中具有相同布局ID的几乎复制的布局所覆盖。 问题现在解决了。