KotlinでViewを定義する
val button: Button = Button(this)
// 変数名 Viewの種類 左と同じ
val button: Button = Button(this)
// 変数名 Viewの種類 左と同じ
これによりxmlファイルでボタンを設置したときのようにActivity上にButtonを置く準備ができた
xmlファイルでLainerLauputを定義する
<LinearLayout
android:id="@+id/linerlayout_parent"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" />
<LinearLayout
android:id="@+id/linerlayout_parent"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" />
これは、普通にXMLファイルでViewをドラッグアンドドロップするだけでよい
この時初期状態では、LinerLaoutにidがついていないので、コードか、GUI上で好きなidを設定しましょう
addViewでlinerlayoutにViewを追加する
linerlayout_parent.addView(button)
//自分でつけたid Viewの変数名
linerlayout_parent.addView(button)
//自分でつけたid Viewの変数名
これでlilnerlayoutにbuttonが追加される
buttonの背景の設定方法
button.setBackgroundResource(R.drawable.group10)//バックグラウンドに画像をセット
// drawableフォルダーにセットした画像を選択
buttonにテキストを追加する
button.text = "サンプル"
val string :String = "サンプル"
button.text = string
button.setBackgroundResource(R.drawable.group10)//バックグラウンドに画像をセット
// drawableフォルダーにセットした画像を選択
button.text = "サンプル"
val string :String = "サンプル"
button.text = string
どちらでもできるが、文字列を変数として扱ったほうが、動的にテキストを変えやすい
文字列の一部の文字の大きさを変える
string.setSpan(RelativeSizeSpan(1.9f), 8, 15, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE)//文字列の一部の大きさを変える
// 文字の大きさ 大きさを変える文字のスタート位置と終了位置を何文字目かで指定
文字列の一部の色を変える
string.setSpan(ForegroundColorSpan(Color.RED), 57, 74, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE)//文字列の一部の色変更
Viewの高さ、幅を指定する
button.layoutParams.height = 100//高さを指定
button.layoutParams.width = 100//幅を指定
string.setSpan(RelativeSizeSpan(1.9f), 8, 15, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE)//文字列の一部の大きさを変える
// 文字の大きさ 大きさを変える文字のスタート位置と終了位置を何文字目かで指定
string.setSpan(ForegroundColorSpan(Color.RED), 57, 74, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE)//文字列の一部の色変更
Viewの高さ、幅を指定する
button.layoutParams.height = 100//高さを指定
button.layoutParams.width = 100//幅を指定
button.layoutParams.height = 100//高さを指定
button.layoutParams.width = 100//幅を指定