How can I programmatically display a ViewFlipper's second child?
Solution 1
I want to be able to display any of these children initially. So for example, maybe I want the ViewFlipper to load initially with the 2nd child and not the 1st.
Call setDisplayedChild()
.
When a child in a ViewFlipper is shown, how can I get that child's index?
Call getDisplayedChild()
.
Solution 2
bringChildToFront(child) does nothing but changes the index value of the child.
In order to bring a child to the front without using showNext() or showprevious(),
use
setDisplayedChild() and indexOfChild() together.
example
vf.setDisplayedChild(vf.indexOfChild(child));
where child is the view that needs to be brought front.
Thanks
Sheehan Alam
iOS, Android and Mac Developer. i can divide by zero.
Updated on June 06, 2022Comments
-
Sheehan Alam about 2 years
I have a ViewFlipper with 3 children.
I want to be able to display any of these children initially. So for example, maybe I want the ViewFlipper to load initially with the 2nd child and not the 1st.
EDIT: I know I can use the getChildAt(int index) method.
When a child in a ViewFlipper is shown, how can I get that child's index?
-
Comic Sans MS Lover about 12 yearsGreat answer, here is how I did:
vF.setDisplayedChild(vF.indexOfChild(findViewById(R.id.view)));
-
Jemshit Iskenderov almost 8 years
setDisplayedChild()
does not work good withsetInAnimation()
. If animation is added, ViewFlipper does not hide other items than which is shown, all views are put on top of each other