0

Я хочу показать индикатор выполнения в панели действий. Я пытался показать это, но когда я пытаюсь это сделать, я получаю как индикатор выполнения, прядильщик, так и горизонтальный в панели действий.Как показать индикатор прогресса на панели действий в Android?

enter image description here

В верхней синей горизонтальной полосе прогресса работает и на праве блесны работает. Но я хочу только верхний синий индикатор выполнения ниже логотипа Hubsystem. Я не знаю, почему показывает бар.

Я использую следующий код:

RequestWindowFeature(Android.Views.WindowFeatures.Progress); 
base.OnCreate(bundle); 


SetProgressBarIndeterminateVisibility(true); 
SetProgressBarIndeterminate(true); 
SetProgressBarVisibility(true); 

Как я могу получить только синий индикатор в нижней части панели действий?

+1

Это может помочь вам ау, http://stackoverflow.com/questions/13934010/progressbar-under-action-bar –

ответ

1

Простой дизайн просто добавьте индикатор выполнения с горизонтальным стилем в основной макет вашей деятельности.

<?xml version="1.0" encoding="utf-8"?> 

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" 
    android:layout_width="match_parent" android:layout_height="match_parent"> 
<ProgressBar android:id="@+id/activity_bar" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_marginTop="-8dp" 
    style="@android:style/Widget.DeviceDefault.ProgressBar.Horizontal" 
    /> 
    <!-- Other layouts --> 
</LinearLayout> 

Здесь я продолжал андроид: layout_marginTop = «- 8dp», потому что если у вас есть тень на панель действий, то он будет регулировать вблизи панель действий. Если тени нет, настройте в соответствии с вами.

Примечание: Это допустимо, только если вы используете ToolBar в своем XML-макете. Если вы делаете это с помощью пользовательского кодирования, тогда сделайте это в своем MainActivity.

public abstract class MainActivity extends Activity { 
    private ProgressBar mProgressBar; 

    @Override 
    public void setContentView(View view) { 
     init().addView(view); 
    } 

    @Override 
    public void setContentView(int layoutResID) { 
     getLayoutInflater().inflate(layoutResID,init(),true); 
    } 

    @Override 
    public void setContentView(View view, ViewGroup.LayoutParams params) { 
     init().addView(view,params); 
    } 

    private ViewGroup init(){ 
     super.setContentView(R.layout.progress); 
     mProgressBar = (ProgressBar) findViewById(R.id.activity_bar); 
     return (ViewGroup) findViewById(R.id.activity_frame); 
    } 

    protected ProgressBar getProgressBar(){ 
     return mProgressBar; 
    } 
} 

 Смежные вопросы

  • Нет связанных вопросов^_^