内容へ移動
猫型iPS細胞研究所
ユーザ用ツール
ログイン
サイト用ツール
検索
ツール
文書の表示
以前のリビジョン
バックリンク
最近の変更
メディアマネージャー
サイトマップ
ログイン
>
最近の変更
メディアマネージャー
サイトマップ
現在位置:
INDEX
»
android
»
コードでViewを追加する
トレース:
android:コードでviewを追加する
この文書は読取専用です。文書のソースを閲覧することは可能ですが、変更はできません。もし変更したい場合は管理者に連絡してください。
====== コードでViewを追加する ====== ===== LinearLayoutの場合 ===== <code> override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) // setContentView(R.layout.activity_main) これはxmlからlayoutを取得するが、コードで作成したlyaoutからデザインwを作成する // layoutを作成する var layout=LinearLayout(this) layout.orientation=LinearLayout.VERTICAL layout.layoutParams = LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT,LinearLayout.LayoutParams.MATCH_PARENT) layout.gravity=Gravity.LEFT // コードで作成したlayoutを設定する setContentView(layout) // コードでimageViewを作成する var imagev = ImageView(this) imagev.setImageResource(R.drawable.man) val layoutParams = LinearLayout.LayoutParams(300,300) imagev.layoutParams=layoutParams // レイアウトにimageViewを追加する layout.addView(imagev) ・・・ </code> ===== ConstraintLayoutの場合 ===== <code> override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) //setContentView(R.layout.activity_main) デフォルトのsetContentViewは使わない // ConstraintLayoutを作る var layout=ConstraintLayout(this) layout.layoutParams = ConstraintLayout.LayoutParams(ConstraintLayout.LayoutParams.MATCH_PARENT,ConstraintLayout.LayoutParams.MATCH_PARENT) // セットする setContentView(layout) // 追加したいViewを作る var imagev = ImageView(this) imagev.setImageResource(R.drawable.man) imagev.id = View.generateViewId() // idを設定する layout.addView(imagev) // ConstraintLayoutに追加したViewを追加する // constraintSet を使ってViewの位置を調整する var constraintSet = ConstraintSet() constraintSet.clone(layout) // android:layout_width="wrap_content" constraintSet.constrainWidth(imagev.id,ConstraintSet.WRAP_CONTENT) //android:layout_height="wrap_content" constraintSet.constrainHeight(imagev.id,ConstraintSet.WRAP_CONTENT) // app:layout_constraintBottom_toBottomOf="parent" constraintSet.connect( imagev.id, ConstraintSet.BOTTOM, ConstraintSet.PARENT_ID, ConstraintSet.BOTTOM, 0) constraintSet.connect( imagev.id, ConstraintSet.TOP, ConstraintSet.PARENT_ID, ConstraintSet.TOP, 0) constraintSet.connect( imagev.id, ConstraintSet.RIGHT, ConstraintSet.PARENT_ID, ConstraintSet.RIGHT, 0 ) constraintSet.connect( imagev.id, ConstraintSet.LEFT, ConstraintSet.PARENT_ID, ConstraintSet.LEFT, 0 ) constraintSet.constrainWidth( imagev.id, 500 ) constraintSet.constrainHeight( imagev.id, 500 ) // constraintSetを適用する constraintSet.applyTo(layout) </code>
android/コードでviewを追加する.txt
· 最終更新: 2019/11/04 19:44 by
ips
ページ用ツール
文書の表示
以前のリビジョン
バックリンク
文書の先頭へ