KotlinでAndroidビューの絶対位置を設定する方法をステップ解説
はじめに
この記事では、Kotlinを使用してAndroidアプリ内のビュー(View)の絶対位置を設定する方法を解説します。RelativeLayout.LayoutParamsのleftMarginとtopMarginを活用することで、画面上の任意の座標にビューを自由に配置できます。動的にUIを生成したい場合に非常に便利なテクニックです。
手順1:新規プロジェクトの作成
まず、Android Studioで新しいプロジェクトを作成します。メニューから「File」→「New Project」を選択し、必要な項目をすべて入力してプロジェクトを作成してください。
手順2:activity_main.xmlの編集
次に、res/layout/activity_main.xmlに以下のコードを追加します。ここでは、ImageViewを配置するための土台としてRelativeLayoutを使用しています。
<RelativeLayout xmlns:android="https://schemas.android.com/apk/res/android"
xmlns:tools="https://schemas.android.com/tools"
android:id="@+id/relativeLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
</RelativeLayout>
手順3:MainActivity.ktの編集
続いて、src/MainActivity.ktに以下のコードを追加します。ポイントは、ImageViewをコード上で動的に生成し、RelativeLayout.LayoutParamsで幅600px・高さ800pxのサイズを指定したうえで、leftMargin = 100、topMargin = 300とすることで絶対位置を決定している点です。
import android.os.Bundle
import android.widget.ImageView
import android.widget.RelativeLayout
import androidx.appcompat.app.AppCompatActivity
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val relativeLayout: RelativeLayout = findViewById(R.id.relativeLayout)
val imageView = ImageView(this)
iimageView.setImageResource(R.drawable.image)
val params = RelativeLayout.LayoutParams(600, 800)
params.leftMargin = 100
params.topMargin = 300
relativeLayout.addView(imageView, params)
}
}
手順4:AndroidManifest.xmlの確認
最後に、androidManifest.xmlが以下のようになっていることを確認してください。
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="https://schemas.android.com/apk/res/android" package="app.com.q1">
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
アプリの実行と動作確認
それでは、アプリケーションを実行してみましょう。ここでは、実際のAndroid端末をパソコンに接続しているものとして説明を進めます。
Android Studioからアプリを実行するには、プロジェクト内のいずれかのアクティビティファイルを開き、ツールバーにある実行アイコン
をクリックします。表示された候補から自分のモバイルデバイスを選択すると、端末上にImageViewが指定した絶対位置(左から100px、上から300px)に配置された画面が表示されます。

-
【Android】ビューの絶対座標を取得する方法をサンプルコード付きで解説
Androidでビューの絶対座標を取得するには?本題に入る前に、「絶対座標」とは何かを確認しておきましょう。絶対座標とは、ウィンドウマネージャー上におけるビューの絶対的な位置(x, y)のことです。画面左上を原点として、そこからの距離で表されます。この記事では、Androidアプリで特定のビューの絶対座標を取得する方法を、実際のサンプルコードとともに段階的に解説していきます。手順1:新規プロジェクトを作成するまず、Android Studioで新しいプロジェクトを作成します。メニューから「File」→「New Project」を選択し、必要な項目をすべて入力してプロジェクトを作成しましょう。手
-
Androidでビューの位置を動的に設定する方法をわかりやすく解説
この記事では、Androidアプリでボタンのタップをきっかけに、TextViewなどのビューの位置を動的に変更する方法を、実際のコード例とともにステップ形式で解説します。ポイントは RelativeLayout.LayoutParams の addRule() メソッドです。これを使うことで、実行時にレイアウト上のルール(配置条件)を追加・変更できます。完成イメージ画面中央に配置されたボタンをタップすると、その直下・左端を揃える位置へTextViewが移動します。手順1:Android Studioで新規プロジェクトを作成するAndroid Studioを起動し、メニューから「File」→「N