Я видел, как несколько человек пытались показать неопределенный индикатор выполнения, и это проблема, противоположная моей.
Что я хочу, так это то, что когда приложение начинает работать, пользователь видит неопределенный индикатор выполнения в верхней части Window
. Затем уходит, когда работа завершена.
Я использую библиотеку app compat v7. Мой Activity
расширяет android.support.v7.app.ActionBarActivity
.
Код, который у меня есть в моем Activity.onCreate()
:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
supportRequestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS);
setContentView(R.layout.main);
...
}
Затем, когда начинается работа (во фрагменте, а не в основном потоке):
((ActionBarActivity) getActivity()).setSupportProgressBarIndeterminateVisibility(true);
Затем, когда работа завершена:
((ActionBarActivity) getActivity()).setSupportProgressBarIndeterminateVisibility(false);
Два любопытных поведения, которые я не могу объяснить. Во-первых, на setSupportProgressBarIndeterminateVisibility(true)
отображается прогресс Window
(что я и хочу) и отображается круглый индикатор выполнения на панели действий.
Во-вторых, на setSupportProgressBarIndeterminateVisibility(false)
прогресс Window
скрывается (ура) и все... круглая полоса прогресса остается видимой...
Поэтому я не знаю, почему происходит какой-либо прогресс на панели действий, и не знаю, как его остановить. Если бы я знал id
представления прогресса на панели действий, я мог бы найти его в меню и убедиться, что он остается скрытым, но я не знаю, что id
(также кажется неправильным способом сделать это).
Любая помощь, объясняющая это поведение, была бы отличной. Спасибо!!