【发布时间】:2018-04-03 21:35:08
【问题描述】:
我正在尝试实现一个旋转的progressBar,但无论我尝试什么都不会显示。这是xml:
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/drawer"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/background"
tools:context="com.example.home.quoteapp.MainActivity">
<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
android:layout_height="70dp"
android:background="@color/background">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="70dp"
android:background="@drawable/rectangle">
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:orientation="vertical">
<Button
android:id="@+id/search"
android:layout_width="35dp"
android:layout_height="35dp"
android:layout_alignParentEnd="true"
android:layout_marginEnd="10dp"
android:layout_marginTop="18dp"
android:background="@drawable/ic_search_black_24dp"
android:clickable="true"
android:focusable="true"
android:gravity="center" />
<Button
android:id="@+id/back_arrow_search"
android:layout_width="35dp"
android:layout_height="35dp"
android:layout_marginTop="18dp"
android:background="@drawable/ic_arrow_back_black_24dp"
android:clickable="true"
android:focusable="true"
android:visibility="invisible" />
<Button
android:id="@+id/nav_button"
android:layout_width="35dp"
android:layout_height="35dp"
android:layout_marginTop="18dp"
android:background="@drawable/ic_more_vert_black_24dp"
android:clickable="true"
android:focusable="true" />
<EditText
android:id="@+id/section"
android:layout_width="230dp"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="30dp"
android:layout_toEndOf="@+id/nav_button"
android:layout_toRightOf="@+id/nav_button"
android:background="@android:color/transparent"
android:clickable="false"
android:ems="10"
android:focusable="false"
android:gravity="left"
android:inputType="textMultiLine|textNoSuggestions"
android:maxHeight="140dp"
android:scrollbars="vertical"
android:text="@string/section"
android:textColor="@color/textColor"
android:textSize="20sp" />
<EditText
android:id="@+id/searchText"
android:layout_width="230dp"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/section"
android:layout_alignBottom="@+id/section"
android:layout_alignStart="@+id/section"
android:background="@drawable/underline"
android:ems="10"
android:hint="Search"
android:imeOptions="actionSearch"
android:inputType="textMultiLine|textNoSuggestions|text"
android:maxHeight="140dp"
android:textColor="@color/textColor"
android:textColorHint="@color/textHint"
android:textCursorDrawable="@null"
android:textSize="20sp"
android:visibility="invisible" />
</RelativeLayout>
</android.support.v7.widget.Toolbar>
<RelativeLayout
android:id="@+id/progressBarLayout"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ProgressBar
android:id="@+id/progressBar"
style="?android:attr/progressBarStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:visibility="visible" />
</RelativeLayout>
<GridView
android:id="@+id/gridView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginBottom="5dp"
android:layout_marginEnd="5dp"
android:layout_marginStart="5dp"
android:layout_marginTop="5dp"
android:alwaysDrawnWithCache="true"
android:clipChildren="true"
android:columnWidth="90dp"
android:gravity="center"
android:horizontalSpacing="5dp"
android:numColumns="auto_fit"
android:padding="0dp"
android:scrollingCache="true"
android:smoothScrollbar="true"
android:stretchMode="columnWidth"
android:verticalSpacing="5dp"></GridView>
</android.support.design.widget.AppBarLayout>
<android.support.design.widget.NavigationView
android:id="@+id/navView"
android:layout_width="200dp"
android:layout_height="match_parent"
android:layout_gravity="start"
android:background="@color/headerColour"
android:theme="@style/NavigationTheme"
android:visibility="invisible"
app:itemBackground="@drawable/nav_item_background"
app:itemTextColor="@color/headerColourAccent"
app:menu="@menu/menu">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="70dp"
android:layout_alignParentEnd="true"
android:layout_alignParentTop="true"
android:background="@color/headerColourAccent">
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="left"
android:gravity="left"
android:paddingLeft="15dp"
android:paddingTop="15dp"
android:text="Sections"
android:textColor="@color/headerColour"
android:textSize="30dp" />
</LinearLayout>
</android.support.design.widget.NavigationView>
</android.support.v4.widget.DrawerLayout>
这就是我在MainActivity 中为progressBar 调用的内容。
private RelativeLayout progressBarLayout;
private ProgressBar progressBar
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.requestWindowFeature(Window.FEATURE_NO_TITLE);
this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.activity_main);
progressBarLayout = findViewById(R.id.progressBarLayout);
progressBar = findViewById(R.id.progressBar);
progressBar.getIndeterminateDrawable().setColorFilter(0xF09D00, PorterDuff.Mode.MULTIPLY);
}
然后我会通过这样做让progressBar消失
progressBarLayout.setVisibility(View.GONE);
但progressBar 从未显示,当我将可见性设置为继续progressBarLayout 时,它确实消失了。
【问题讨论】:
-
尝试为progressBar设置准确的宽度/高度值(不是wrap_content,如您的代码所示)
-
即使我将宽度和高度设置为 100dp 或 match_parent,它也不显示
-
这个进度条出现在 appbar 布局中是否有特定原因?如果不只是将进度条和网格视图放在 之后,您将看到它们
-
我试过了,但它也没有出现。 hastebin.com/ozasizajih.xml
标签: java android user-interface progress-bar