【发布时间】:2014-02-21 07:43:27
【问题描述】:
我想更改FrameLayout 的视图层,并尝试调用bringToFront() 方法。这是行不通的。然后,我尝试setVisibility(View.GONE) 和setVisibility(View.VISIBLE)。同样,它不起作用。
事实上,这两种方法都可以只改变顶层。第二次,他们都失败了。
我该怎么做?
private void next(){
if(currentPage < MAX_INDEX){
currentPage++;
//indicator[currentPage].bringToFront();
for(int i=0; i < MAX_INDEX; ++i){
indicator[i].setVisibility(View.INVISIBLE);
}
Log.d("current page:", "current page = " + currentPage);
indicator[currentPage].setVisibility(View.VISIBLE);
} else {
startActivity(new Intent(SetupActivity.this, MainActivity.class));
SetupActivity.this.finish();
}
}
注意:
removeAllViews() 然后addView() 为我工作。
任何想解释为什么我不能使用bringToFront() 和setVisibility() 方法的人,将不胜感激!
【问题讨论】:
-
发布你正在尝试的代码
-
indicator 是您想要更改的视图。它的父布局是什么?而不是隐藏和显示。从其父级中删除所有视图并添加指示符[currentPage]。它可能对你有帮助
-
感谢您的回复。是的,指标是我要更改的视图。指标的父级是
framelayout。
标签: android view android-framelayout