在Kotlin中使用辅助构造函数的子类RelativeLayout

我试着在Kotlin中继承RelativeLayout,但我坚持三个构造函数。

public RelativeLayout(Context context) {} public RelativeLayout(Context context, AttributeSet attrs) {} public RelativeLayout(Context context, AttributeSet attrs, int defStyle) {} 

我已经尝试了http://devnet.jetbrains.com/message/5482057中描述的过程,但是我没有看到如何将它们与我的用例相匹配。

希望三个构造函数互相调用,我尝试使用默认值,但在应用程序启动时崩溃:

 class SquareRelativeLayout(context: Context, attrs: AttributeSet? = null, defStyle: Int = 0) : RelativeLayout(context, attrs!!, defStyle) {} 

任何暗示Kotlin的方式来做到这一点?

我正在使用Kotlin 0.8.11

更新 :由于M11(0.11。*),你可以使用二级构造函数来解决这个问题。

Kotlin不支持多个构造函数,所以你可以做的一个解决方法就是用Java编写这个特定的类(你可以在你的项目中自由地混合使用Java和Kotlin)