私が取り組んでいるアプリケーションは、プロファイルのHorizontalScrollViewを表示する動的レイアウトが必要です。プロファイルは、画像とテキストを含む単純なRelativeLayoutです。私はデータファイルからデータを取得するので、プロファイルごとに相対レイアウトを作成する必要があります。最初は、それぞれのRelativeLayoutをプログラムでforループで作成し、それを親ビューに追加しました。これは機能しますが、私はこのようにしたくありません。デバイスの画面サイズなどに基づいて、さまざまなレイアウトファイルを使用したいと考えています。Android:ビューのコピーを作成できますか?
私は考えました。さて、1つのプロファイルだけのレイアウトがあればどうでしょうか?私のコードはfindViewById()
でその1つのプロファイルを取得し、それに基づいて新しいプロファイルを作成できます。言い換えれば:これは、Javaで、temporaryProfileは今originalProfileへの参照であるため、当然のことながら
// get the layout
profileLayout = (LinearLayout) findViewById(R.id.profileLayout);
// get the first profile in the layout
originalProfile = (RelativeLayout) findViewById(R.id.profile1);
// make copy of profile
temporaryProfile = originalProfile;
// make changes to the this profile and add it back
profileLayout.addView(temporaryProfile);
、これは動作しません。では、このRelativeLayoutのコピーを作成する方法はありますか?私はLayoutInflaterを認識していますが、それがどのように動作するのかまだ分かりません。 Object.clone()
もあります。
ありがとう! –