私のアプリケーションでは、2 つのレイアウトがあります。1 つは動的に変化するルート レイアウトで、2 番目は何度も開く単なるフォームです。フォームはルート レイアウトの子である必要がありますが、実行に失敗しています。
私は単に使用する必要があると思います:
main.AddView(フォームレイアウト)
しかし、この formLayout オブジェクトを取得する方法がわかりません。
可能な回答をありがとうございます。
私のアプリケーションでは、2 つのレイアウトがあります。1 つは動的に変化するルート レイアウトで、2 番目は何度も開く単なるフォームです。フォームはルート レイアウトの子である必要がありますが、実行に失敗しています。
私は単に使用する必要があると思います:
main.AddView(フォームレイアウト)
しかし、この formLayout オブジェクトを取得する方法がわかりません。
可能な回答をありがとうございます。
Sounds like you need the LayoutInflater
object Android reference.
This allows you to create an object from the xml layout in your project.
cjk のアドバイスを受けて、実際に私の質問に答えるコードを書きました。
setContentView(R.layout.main);
main = ((ViewGroup)findViewById(android.R.id.content));
LayoutInflater inflater = this.getLayoutInflater();
ViewGroup form= (ViewGroup) inflater.inflate(R.layout.formLayout, null);
main.addView(form);
皆さん、ありがとうございました
質問を正しく理解しているかどうかはわかりませんが、そのようなことがうまくいく可能性があります。
View myView;
myView = (View) this.findViewById(R.id.formLayout);
main.addView(myView);
get とは、新しく開いたレイアウトでフィールドを取得したいという意味だと思います。それを新しいインテントにして、startActivity の代わりに startActivityForResult を使用することで実行できます。