Android 如何使用构造函数中的上下文?

Android 如何使用构造函数中的上下文?,android,kotlin,android-context,behavior,Android,Kotlin,Android Context,Behavior,现在我有一个实现行为的类,我在下一个代码中使用上下文,我可以简化它吗 class FabBehavior: CoordinatorLayout.Behavior<FloatingActionButton> { private var myContext: Context? = null private val fabDefaultBottomMargin = myContext?.resources?.getDimension(R.dimen.dp_16)?.toI

现在我有一个实现
行为的类,我在下一个代码中使用上下文,我可以简化它吗

class FabBehavior: CoordinatorLayout.Behavior<FloatingActionButton> {

    private var myContext: Context? = null
    private val fabDefaultBottomMargin = myContext?.resources?.getDimension(R.dimen.dp_16)?.toInt() ?: 0

    constructor() : super()
    constructor(context: Context, attrs: AttributeSet) : super(context, attrs) {
        myContext = context
    }
类行为:CoordinatorLayout.Behavior{
私有变量myContext:上下文?=null
private val fabdaultbottommargin=myContext?.resources?.getdimen(R.dimen.dp_16)?.toInt():0
构造函数():super()
构造函数(context:context,attrs:AttributeSet):super(context,attrs){
myContext=上下文
}
更新

我也试过这样的smth:

class FabBehavior(context: Context, attrs: AttributeSet?): CoordinatorLayout.Behavior<FloatingActionButton>(context, attrs) {

    private val fabDefaultBottomMargin = context.resources?.getDimension(R.dimen.dp_16)?.toInt() ?: 0

    constructor(context: Context) : this(context, null)
类行为(上下文:上下文,属性集?):CoordinatorLayout.Behavior(上下文,属性集){
private val fabdaultbottommargin=context.resources?.getdimen(R.dimen.dp_16)?.toInt():0
构造函数(context:context):这个(context,null)

我想你要找的是:

  class FabBehavior(private val context: Context?, attrs: AttributeSet?) : CoordinatorLayout.Behavior<FloatingActionButton>(context, attrs) {

      fun doSomething() {
       context.invokeMethodOnContext()
    }
}
类行为(私有val上下文:context?,attrs:AttributeSet?):CoordinatorLayout.Behavior(上下文,attrs){
有趣的事{
context.invokeMethodOnContext()调用
}
}