首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Android - ViewSwitcher没有切换视图

Android - ViewSwitcher没有切换视图
EN

Stack Overflow用户
提问于 2010-09-22 02:12:09
回答 2查看 9.6K关注 0票数 5

这应该很简单,对吧?所以-以下是我如何在XML中定义ViewSwitcher (为简洁起见省略了Id和布局)

代码语言:javascript
复制
<ViewSwitcher android:layout_height="wrap_content" android:layout_width="fill_parent" >       
    <!-- First view, comes up OK --> 
    <LinearLayout android:id="@+id/header1">
        <!-- some more controls: Progress bar, test view and the button -->
    </LinearLayout>
    <!-- second view. changing to the actual (not include) layout has no effect -->
    <include android:id="@+id/header2" />
</ViewSwitcher>

然后在我的Java代码中的某个地方有这样的代码

代码语言:javascript
复制
ViewSwitcher switcher = (ViewSwitcher) findViewById(R.id.profileSwitcher);
// more code that basically executes background search
// when call comes back - switch
switcher.bringToFront(); // does nothing
// switcher.bringChildToFront(findViewById(R.id.header2)); // no effect ether

它就是不能切换。我是为APIv.3 (1.5+)开发的,令我惊讶的是,很少有人提到ViewSwitcher。我是不是漏掉了什么明显的东西?

附言:我刚刚通过暴力手段发现这个方法是有效的:

代码语言:javascript
复制
switcher.setDisplayedChild(1);

尽管如此-为什么bringToFront()不走运?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-09-22 03:20:12

bringToFront()实际上与ViewSwitcher没有任何关系,该方法继承自View类,代表对当前视图的z顺序操作:https://developer.android.com/reference/android/view/View.html#bringToFront()

您必须使用从ViewAnimator继承的showNext()showPrevious()方法。

票数 20
EN

Stack Overflow用户

发布于 2013-03-26 16:36:26

ViewSwitcher中,可以使用showPrevious()showNext()方法在视图之间导航

或者使用也可以通过setDisplayedChild(int index)方法转到特定视图,其中索引可以是01

票数 21
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3763171

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档