Something like this should work:
<ToggleButton android:id="@+id/my_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textOn=""
android:textOff=""
android:background="@drawable/my_button_bg"
/>
Where "drawable/my_button_bg.xml" is where you set your 2 images. In
you cases you would have a door_state_bg.xml, light_state_bg.xml ...
You are then just changing the background.
Hope this helps!
Olivier.
On Mar 16, 11:45 pm, Nathan <[email protected]> wrote:
> On Mar 16, 2:16 pm, Mark Murphy <[email protected]> wrote:
>
>
>
>
>
> > Nathan wrote:
> > > The current ToggleButton extends TextView and not ImageButton, so you
> > > can't switch images, just text.
>
> > First, ToggleButton extends CompoundButton, like you were proposing for
> > your own implementation.
>
> > Second, you should be able to replace the image used by ToggleButton.
>
> > Step #1: Clone the following resources from your SDK into your project:
>
> > res/drawable/btn_toggle.xml
> > res/drawable/btn_toggle_bg.xml
> > res/drawable-*/btn_toggle_on.9.png
> > res/drawable-*/btn_toggle_off.9.png
>
> > Step #2: Modify btn_toggle_bg.xml to point to your @drawable/btn_toggle
> > rather than the built-in one.
>
> > Step #3: Change btn_toggle_*.9.png as needed
>
> > Step #4: Set btn_toggle_bg as the background of the ToggleButton, in
> > your layout or via a style
>
> Thanks. This is great stuff.
>
> I was actually looking for a more reusable widget, so I wouldn't have
> to go through the above procedure three times if I wanted three
> toolbar buttons. This gives me a starting point.
>
> Something like this:
>
> <ToggleImageButton
> android:layout_width="wrap_content"
> android:layout_height="wrap_content"
> srcOff="@drawable/door_closed"
> srcOn="@drawable/door_open"/>
> <ToggleImageButton
> android:layout_width="wrap_content"
> android:layout_height="wrap_content"
> srcOff="@drawable/light_off"
> srcOn="@drawable/light_on"/>
> <ToggleImageButton
> android:layout_width="wrap_content"
> android:layout_height="wrap_content"
> srcOff="@drawable/intact_walnut"
> srcOn="@drawable/cracked_walnut"/>
>
> I believe I will have to write some code, though maybe not much, to
> read those attributes and use them.
>
> Nathan
--
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en
To unsubscribe from this group, send email to
android-developers+unsubscribegooglegroups.com or reply to this email with the
words "REMOVE ME" as the subject.