我在Android上将visibility设为隐形,如下所示:

myImageView.setVisibility(View.INVISIBLE);

然后让它可见:

myImageView.setVisibility(View.VISIBLE);

现在我不知道myImageView是否可见,我如何才能像这样判断它:

if (myImageView IS VISIBLE) {
    Do something
} else {
    Do something else
}

我该怎么做?我必须在括号内写些什么?

推荐答案

虽然View.getVisibility()确实获得了可见性,但它不是一个简单的true/false.视图的可见性可以设置为以下三种情况之一.

View.VISIBLE

View.INVISIBLE个 视图是不可见的,但仍将使用它通常占用的任何间距.它的"隐形"

View.GONE

因此,为了回答您的问题,您需要:

if (myImageView.getVisibility() == View.VISIBLE) {
    // Its visible
} else {
    // Either gone or invisible
}

Android相关问答推荐

Kotlin中的类型参数不在其范围内

我遇到了一个HashMaps对象没有存储在Firebase数据库中的问题.HashMap的一个对象put方法未被存储

Android Kotlin DSL Gradle找不到自定义存储库中的依赖项

如何在Android Emulator上从物理设备接收TCP消息

处理Room数据库中的嵌套实体

Google Play测试应用程序Crash-java.lang.NoSuchFieldError:没有Lkotlinx/coroutines/CoroutineExceptionHandler类型的字段键

Jetpack Compose-如何在进入新产品线之前删除单词?

Clean MVVM 架构中的 API 响应处理

从包含的(复合)模块导入 Kotlin 类时,Android 应用程序模块的 build.gradle.kts 未解决的引用错误

Spinner - onItemLongClick 从未执行

如何将DrawableId参数传递给XML布局?

CoroutineScope 与挂起函数

Android工作室未成立

每次在 Jetpack Compose 中调用导航

如何将一个 Composable 作为其参数传递给另一个 Composable 并在 Jetpack Compose 中显示/运行它

Jetpack Compose 中的滑动按钮菜单

Android 自动分页如何与 media3 配合使用?

使用 Jetpack Compose 时,如何以简单的方式在 Color.kt 中定义 colored颜色 ?

我应该使用 Bluetooth Classic 还是 Bluetooth LE 与我的移动应用程序通信?

复用 RecyclerView 适配器,避免不必要的 API 调用