2016-07-07 19 views

答えて

5

それは状態を変更するための「ゲッター」のために少し奇妙に思えるが、あなたがextension propertyを使用することができます。

val View.VISIBLE: Unit 
    get() { 
     visibility = View.VISIBLE 
    } 

そして、あなたはまた、あなたが潜在的に連鎖することができるよう、新たな可視性値を返すか、自分自身を返す作ることができますコール。

val View.VISIBLE: Int 
    get() { 
     visibility = View.VISIBLE 
     return visibility 
    } 

または

val View.VISIBLE: View 
    get() = apply { visibility = View.VISIBLE } 
+1

はい、それは変です。これは実際のシナリオではなく、ちょうど物事を乱していた。ありがとう –

2

はい、あなたはこのようなゲッターとextension propertyプロパティを記述することができます、しかし

myView.visible 

保つ:使用に

val View.visible: View 
    get() = apply { visibility = View.VISIBLE } 

そのプロパティwi getterでの副作用は一般に推奨されません(また、Functions vs Propertiesも参照してください)。この動作は、プロパティではむしろ混乱します。

関連する問題