gpt4 book ai didi

android - 强制参数为可以传递给方法的特定类型

转载 作者:太空狗 更新时间:2023-10-29 15:40:00 24 4
gpt4 key购买 nike

Android 3.5
Kotlin 1.3

我有以下方法传入一个参数,该参数可以是 VISIBLEINVISIBLEGONE

fun setPromotionVisibility(Int: toVisiblity) {
tvPromoation.visibility = toVisibility
}

但是,当我调用此方法时,我可以传入任何可能不是可见性的 Int,即

setPromotionVisibility(234)

而不是这样做:

setPromotionVisibility(View.VISIBLE)

只是想知道我是否可以做些什么来强制该方法的用户只输入VISIBLEINVISIBLEGONE

提前致谢

最佳答案

您可以使用枚举创建类型安全的方法:

enum class Visibility(
val asInt: Int
) {
VISIBLE(View.VISIBLE),
INVISIBLE(View.INVISIBLE),
GONE(View.GONE),
}

然后将其用作参数类型:

fun setPromotionVisibility(toVisiblity: Visibility) {
tvPromoation.visibility = toVisibility.asInt
}

关于android - 强制参数为可以传递给方法的特定类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57725805/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com