Android不确定ProgressBar不显示

我正在为我的Android应用程序添加一个旋转进度视觉,为了使它变得复杂,我目前只在我的onCreate中启动它,而不是结束它,因为它应该是非常简单的。 但是,遵循指定只包含进度条的正式Android文档

<ProgressBar android:id="@+id/weather_loading_bar" android:layout_width="wrap_content" android:layout_height="wrap_content" /> 

对于不确定的加载条,它不起作用。 我试图增加indeterminatevisibility ,但没有运气。

 <ProgressBar android:id="@+id/weather_loading_bar" android:layout_width="wrap_content" android:layout_height="wrap_content" android:indeterminate="true" android:visibility="visible" /> 

我使用Kotlin的Android扩展,所以在我的onCreate()我试过了

 override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) //setVisibility here doesn't actually get shown as an option in the autocomplete, but still compiles. weather_loading_bar.setVisibility(View.VISIBLE) } 

但是当我的应用程序启动时,没有进度条。

编辑:这是整个activity_main布局

 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".ui.MainActivity"> <android.support.v7.widget.CardView xmlns:card_view="http://schemas.android.com/apk/res-auto" android:id="@+id/currentData" android:layout_width="match_parent" android:layout_height="wrap_content" card_view:cardBackgroundColor="@color/blue" card_view:cardCornerRadius="0dp" card_view:cardMaxElevation="25dp"> <RelativeLayout android:id="@+id/cardviewLayout" android:layout_width="fill_parent" android:layout_height="fill_parent" android:padding="10dp"> <LinearLayout android:id="@+id/temperature_layout" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1" android:gravity="center" android:orientation="vertical"> <TextView android:id="@+id/time" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textColor="@color/white" android:textSize="10sp" tools:text="this is the time" /> <TextView android:id="@+id/temperature" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textColor="@color/white" android:textSize="25sp" tools:text="50°" /> </LinearLayout> <LinearLayout android:id="@+id/feel_layout" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentRight="true" android:layout_weight="1" android:gravity="center" android:orientation="vertical"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Feels Like" android:textColor="@color/white" android:textSize="10sp" /> <TextView android:id="@+id/feels" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textColor="@color/white" android:textSize="25sp" /> </LinearLayout> <!-- Layout Middle--> <LinearLayout android:id="@+id/forecast_summary" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerInParent="true" android:gravity="center" android:orientation="vertical" android:padding="30dp"> <ImageView android:id="@+id/current_icon" android:layout_width="100dp" android:layout_height="100dp" /> <TextView android:id="@+id/summary_text" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textColor="@color/white" android:textSize="15sp" /> </LinearLayout> <!-- End Layout Middle --> <!-- Layout bottom --> <LinearLayout android:id="@+id/precip_layout" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/forecast_summary" android:layout_weight="1" android:gravity="center" android:orientation="vertical"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Chance of Rain" android:textColor="@color/white" android:textSize="10sp" /> <TextView android:id="@+id/precipitation" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textColor="@color/white" android:textSize="25sp" /> </LinearLayout> <LinearLayout android:id="@+id/wind_layout" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentRight="true" android:layout_below="@+id/forecast_summary" android:layout_weight="1" android:gravity="center" android:orientation="vertical"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Wind Speed" android:textColor="@color/white" android:textSize="10sp" /> <TextView android:id="@+id/wind" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textColor="@color/white" android:textSize="25sp" /> </LinearLayout> <!-- End layout bottom --> </RelativeLayout> </android.support.v7.widget.CardView> <view android:id="@+id/recycler_view" class="android.support.v7.widget.RecyclerView" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_below="@+id/currentData" android:layout_centerInParent="true" /> <ProgressBar android:id="@+id/weather_loading_bar" android:layout_width="wrap_content" android:layout_height="wrap_content" android:indeterminate="true" android:visibility="visible" /> 

你的布局有一些大问题。 首先,您没有在布局中指定您的进度条显示的位置。 您需要添加相对于父亲RelativeLayout界限。

第二个是, RelativeLayoutFrameLayout的扩展,它从后到前堆栈视图。 因此,您的进度条位于布局的后面, CardView (以及顶部的所有内容)位于前面。

放置你的

 <ProgressBar android:id="@+id/weather_loading_bar" android:layout_width="wrap_content" android:layout_height="wrap_content" android:indeterminate="true" android:visibility="visible" /> 

在RelativeLayout下方回收者视图的底部。