今まで作っていたJavaのソースを元に
Kotlinでプログラムを書こうとしたけれど
変換の仕方がわからない…と思った時のメモです!
viewPager.setCurrentItem
Java
viewPager.setCurrentItem(1);
↓
Kotlin
mViewPager.currentItem = 1
(CustomImageViewなどの)コンストラクタ部分
Java
public CustomImageView(Context context) { super(context); } public CustomImageView(Context context, AttributeSet attrs) { super(context, attrs); init(context); } public CustomImageView(Context context, AttributeSet attrs, int defStyleAttr) { super(context, attrs, defStyleAttr); }
↓
Kotlin
constructor(context: Context?) : super(context) { } constructor(context: Context?, attrs: AttributeSet?) :super(context, attrs) { } constructor(context: Context?, attrs: AttributeSet?, defStyleAttr: Int) :super(context, attrs, defStyleAttr) { }
extends、implements
Java
public class CustomImageView extends android.support.v7.widget.AppCompatImageView { … }
↓
Kotlin
class CustomImageView : android.support.v7.widget.AppCompatImageView {
Javaで「extends」と書いていたところは、
Kotlinでは「:(コロン)」で置き換えるとうまくいったよ、というメモです。
どうやら、implementsも含め、複数書く場合は「,(カンマ)」で区切って続けるといいようですー。
(以下は複数ある場合の書き方の例です…)
class MyClass : SuperClass(), MyInterface, Serializable
スポンサーリンク