Mar*_*tin 168 user-interface android visible
我visibility在Android上设置为隐形:
myImageView.setVisibility(View.INVISIBLE);
Run Code Online (Sandbox Code Playgroud)
然后让它可见:
myImageView.setVisibility(View.VISIBLE);
Run Code Online (Sandbox Code Playgroud)
现在我不知道是否myImageView可见,我该如何检查:
if (myImageView IS VISIBLE) {
Do something
} else {
Do something else
}
Run Code Online (Sandbox Code Playgroud)
我怎样才能做到这一点?我必须在括号内写什么?
Wil*_*iam 456
虽然View.getVisibility()确实获得了可见性,但它不是简单的true/false.视图可以将其可见性设置为三种情况之一.
View.VISIBLE 视图可见.
View.INVISIBLE 视图不可见,但仍将使用它通常占用的任何间距.它的"隐形"
View.GONE 视图消失了,你无法看到它并且它没有占据"点".
所以要回答你的问题,你正在寻找:
if (myImageView.getVisibility() == View.VISIBLE) {
// Its visible
} else {
// Either gone or invisible
}
Run Code Online (Sandbox Code Playgroud)
dev*_*ato 116
或者你可以简单地使用
View.isShown()
Run Code Online (Sandbox Code Playgroud)
Bil*_*ote 53
如果图像是布局的一部分,它可能是"View.VISIBLE",但这并不意味着它在可见屏幕的范围内.如果这就是你所追求的; 这将工作:
Rect scrollBounds = new Rect();
scrollView.getHitRect(scrollBounds);
if (imageView.getLocalVisibleRect(scrollBounds)) {
// imageView is within the visible window
} else {
// imageView is not within the visible window
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
183312 次 |
| 最近记录: |