2013-04-11 16 views
8

Wyświetlany jest poziomy pasek postępu na pasku działań. Mój problem polega na tym, że pasek postępu nie jest szerokością paska akcji, ale jest mniejszy (ale wyśrodkowany). Czy to normalne zachowanie? Jak mogę podać szerokość ekranu?Pozioma szerokość paska postępu w pasku akcji

używam tego w onCreate

requestWindowFeature(Window.FEATURE_PROGRESS); 

i to w moich metodach

public void setShowIndeterminateProgress(boolean val) { 
    setProgressBarIndeterminate(true); 
    setProgressBarVisibility(val); 
} 

Z góry dzięki.

+0

Czy próbowałeś testować emulator i co najmniej 2 różne urządzenia? – d3dave

+0

możesz umieścić ekran tego? –

Odpowiedz

0

Musisz usunąć wszystkie pozycje z menu.

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    MenuInflater inflater = getMenuInflater(); 
    //inflater.inflate(R.menu.main, menu); 
    ActionBar actionBar = getActionBar(); 
    actionBar.setDisplayHomeAsUpEnabled(false); 
    actionBar.setDisplayShowHomeEnabled(false); 
    actionBar.setDisplayShowCustomEnabled(false); 
    actionBar.setDisplayShowTitleEnabled(false); 
    //actionBar.setIcon(R.drawable.ic_launcher); 

    LayoutInflater inflator = (LayoutInflater) this.getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
    View view = inflator.inflate(R.layout.actionbar_main, null); 

    //actionBar.setCustomView(view); 
    return true; 

} 

Następnie należy utworzyć układ xml z paskiem postępu. W tym width = "match_parent". Uncomment actionBar.setCustomView i ta metoda, aby nadmuchać akcjęBar z własnym niestandardowym widokiem.

Spróbuj tego i daj mi śpiewać, czy to działa dla Ciebie.

2

Istnieje atrybut android:progressBarPadding w stylu paska akcji. Ustaw go na 0dip.

<style name="MyActionBar" parent="@android:style/Widget.Holo.ActionBar"> 
    <item name="android:progressBarPadding">0dip</item> 
</style>