我刚升级到AppCompat v23
,发现setSupportProgressBarIndeterminateVisibility
已弃用。但是,我无法找出替代方案,文档似乎非常渺茫。
如果有替代方法可以帮助我在ProgressBar
上显示SupportActionBar
,请告知我们。感谢您的帮助。
答案 0 :(得分:3)
您需要使用Toolbar
代替SupportActionBar
。
将ProgressBar
添加到Toolbar
,如下例所示。
<android.support.v7.widget.Toolbar
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/toolbar"
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:minHeight="?attr/actionBarSize"
android:background="?attr/colorPrimary">
<ProgressBar
android:id="@+id/progress_spinner"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="end"
android:indeterminate="true"
android:visibility="gone" />
</android.support.v7.widget.Toolbar>
然后在AppCompatActivity
中,在检索ProgressBar
后找到Toolbar
,并在需要时将ProgressBar
设置为可见或不可见。
protected void onCreate(Bundle savedInstanceState)
{
setContentView(R.layout.toolbar);
mToolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(mToolbar);
progressBar = (ProgressBar) findViewById(R.id.progress_spinner);
//Make progress bar appear when you need it
progressBar.setVisibility(View.VISIBLE); // OR Use View.INVISIBLE to Make progress bar disappear
}
希望这会有所帮助:)