Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Custom Title Bar with Progress in Android

I was wondering if there was any way to feature a custom title with my own drawable -- and then subsequently put a progress bar in the title layout so that it acts like the built in android progress bar.

In my code -- I want to be able to call setProgressBarIndeterminateVisibility(true) and have that display the progress bar in my custom title bar.

Is this possible?

I have set up my application theme so that it uses a custom title -- but I don't how or where to put the progress bar in that layout.

Thanks in advance.

EDIT: Right now I use my own theme that looks something like this:

<style parent="android:Theme.Light.NoTitleBar" name="BaseTheme">
    <item name="android:windowBackground">@drawable/splash_bg</item>
    <item name="android:windowTitleStyle">@style/TitleBackground</item>
</style>

With the title background style as :

<style name="TitleBackground" parent="android:WindowTitleBackground">
    <item name="android:background">@drawable/title_bar</item>
</style>

To give everyone a better idea -- something like this. alt text

like image 733
hwrdprkns Avatar asked Aug 21 '10 19:08

hwrdprkns


2 Answers

Add this code in onCreate before any other code:

requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS);
requestWindowFeature(Window.FEATURE_PROGRESS);  

setProgress(xx); // Then use this to update the progress to xx amount

To turn on/off use

setProgressBarIndeterminateVisibility(false);  //true to turn on.

I have used this in a login Activity, my problem is that I run most of the login async so I having problems updating the UI. But I do get the circular progress animation to display.

I have this working on a TabActivity being updated from an async call within an Activity Intent started by the TabActivity. I had to put the "requestWind...." lines in both the TabActivityand the called Activity. Also I have found using setProgress wasn't doing much, but the spinner animation was "spinning" the whole time so I'm happy.

like image 88
Jim Avatar answered Sep 22 '22 10:09

Jim


Here is an great example of how to implement a custom title bar with a progress indicator:

http://downloadandroid.info/2010/08/creating-a-custom-titlebar/

My solution is to have an ActivityHelper class which extends Activity and includes this method as well as one to turn on or off the progress bar, then extend that class from each of my Activities.

like image 30
FrederickCook Avatar answered Sep 23 '22 10:09

FrederickCook