facebook twitter hatena line email

Android/レイアウト/レイアウトファイルをjavaで取得

提供: 初心者エンジニアの簡易メモ
移動: 案内検索

res/layout/main.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >
            <LinearLayout
                android:id="@+id/bodyLayout"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:gravity="center_horizontal"
                android:orientation="vertical">
            </LinearLayout>
</LinearLayout>

res/layout/video_item.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center_horizontal"
    android:orientation="vertical">
    <ImageView
        android:id="@+id/iconImage"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />
</LinearLayout>

hogehoge.java

import android.view.LayoutInflater;

LinearLayout bodyLayout = findViewById(R.id.bodyLayout);
LayoutInflater inflater = LayoutInflater.from(this);
LinearLayout itemLayout = (LinearLayout)inflater.inflate(R.layout.video_item, null);
Button button = (Button)itemLayout.findViewById(R.id.button1); // 取得したxmlレイアウトのid取得はこんな感じ
bodyLayout.addView(itemLayout);

参考:http://inujirushi123.blog.fc2.com/blog-entry-27.html

参考:https://developer.android.com/reference/android/view/LayoutInflater