0

Android開発は初めてで、ユーザーの入力を取得してアクティビティを作成する方法があるかどうか疑問に思っていましたか?たとえば、ユーザーが自分のプロファイルを設定するプロセスを実行しているとします。質問の一つは「あなたは何匹のペットを飼っていますか?」です。ユーザーは「4」を入力し、「次へ」ボタンをクリックします(次のアクティビティが開きます)。

ユーザーが「4」を入力して、次のアクティビティで4つのeditTextオブジェクトを作成し、ユーザーが自分のペットの名前を入力できるようにするにはどうすればよいですか。

私は大丈夫なプログラマーです(ただし、これまでXMLに触れたことはありません)ので、詳細に立ち入る必要はありません。この変数にアクセスして4つのeditTextオブジェクトを作成する方法がわかりません。私が見つけたところによると、実行時にリソースに文字列を追加したり、リソース内のファイルを編集/追加したりすることはできません。

私は、JavaからXMLファイルを作成し、それが可能であれば、アクティビティ(XMLで作成)にXMLファイルを読み取らせることを考えていましたか?XMLファイルはXMLファイルを読み取ることができますか?

4

4 に答える 4

0

これはxmlとは関係ありません

ユーザーの入力は、文字列などの別のデータ型で保存されます。新しいアクティビティをロードする必要がある場合、できることの 1 つは、androidBundleタイプで情報を渡すことです。

intentデータ型を使用して新しいアクティビティを開始します。intentデータ型には、変数putExtraを入れることができるメソッドがあります。

あなたstartActivity(yourIntent)の後、新しいアクティビティが呼び出すことができ、それに関連付けられBundleたメソッドが呼び出されますgetExtragetIntent()

これらは少なくともあなたを導くはずです

于 2012-08-05T14:11:43.440 に答える
0

意図。

String 1 = et.getText().toString();
String 2 = et.getText().toString();
String 3 = et.getText().toString();
String 4 = et.getText().toString();

Intent i = new Intent(this, newclass.class).
i.putExtras("key1", 1);

// 等々。

// 次に、データを取得します。

bundle extras = i.getExtras();
string temps1 = extras.getString("key1", null);

詳細はこちら: http://developer.android.com/reference/android/content/Intent.html

于 2012-08-05T14:12:36.727 に答える
0

あなたが求めているのは、実際にはアクティビティの作成ではなく、レイアウトの作成です。既にお気づきのように、Android では xml を使用してレイアウトを定義できます。アクティビティには、その xml に基づいてコンテンツ ビューを設定するために呼び出す簡単なメソッドがあります。ただし、レイアウトは xml で定義する必要はありません。それらはプログラムで作成できます。

アクティビティを開始すると、そのための が作成Intentされ、このインテントに「エクストラ」を追加できます。そうすることで、パラメーターをアクティビティに渡すことができ、それらをレイアウトの作成方法のヒントとして使用できます。

プログラム レイアウト (http://mylifewithandroid.blogspot.com/2007/12/xml-and-programmatic-layout.html が役立つ場合があります) について調査すると、知っておくべきことがわかるでしょう。

于 2012-08-05T14:14:32.000 に答える
0

インテントの助けを借りて、データ(あなたの場合はユーザー入力)を渡すことができます。putExtra を使用してデータを送信できます。ここにあなたのための良いチュートリアルがあります.

動的レイアウトの場合、現在のレイアウトを拡張して、現在のビューにコントロールを追加できます。動的レイアウトの場合、これは参照するのに適したチュートリアルです。

この 2 つのチュートリアルがお役に立てば幸いです。

于 2012-08-05T14:15:47.857 に答える