I can create an Option Menu for a single Activity. But now I want to create a Logout option in the menu which should be available on all Activities in the App. Is there a possible way to create an Option menu once for an Application?
+1
A:
I answered this once on SO, but i forgot where...so here i go again.
Its quite Straightforward.
Create a BaseActivity
(extends Activity
). Implement all your Options Menu Code in this. Override your onOptionsMenu
,etc...
Now, For all your other Activities, instead of extending Activity, extend BaseActivity
. You'll end up deriving all the options menu code...nifty eh?
Code once, use multiple times...
OOP for the win!
Edit: As WarrenFaith points out, you'll need to create BaseListActivity
and BaseMapActivity
if you're using ListActivity
and MapActivity
.
st0le
2010-09-17 07:29:08
Dont forget to do that for the other types of activity like ListActivity and MapActivity
WarrenFaith
2010-09-17 07:31:08
@WarrenFaith, yes, of course!
st0le
2010-09-17 07:41:48
@st0le: Nice Idea. But I want it on `MapActivity` also. My guess: what about the class which extends the Application class. In that class can we create the option Menu?
Praveen Chandrasekaran
2010-09-17 07:46:03
I was about to say the same as Praveen... :-)
ggomeze
2010-09-17 07:49:13
@Praveen, i already appended the solution. Check the edit. You cannot override Options menu in the `Application` class, it's not defined there.
st0le
2010-09-17 07:59:14