0

配列position(toString)を取得し、それを新しいアクティビティに渡そうとしています。次に、その文字列を使用して、新しいアクティビティで開く配列を選択します。

Intent launchingIntent = getIntent();
String content = launchingIntent.getData().toString();
setListAdapter(ArrayAdapter.createFromResource(getApplicationContext(), R.array.????, R.layout.main)); `

R.array。???? 渡される文字列(文字列の内容)である必要があります。これは、フォローアップする配列の名前だからです。

使用する配列の名前に文字列変数を渡す方法が見つかりません。

編集:1つのlistViewを取得して、同じアクティビティで別のListviewを開き、前のListViewを閉じようとしています。

4

1 に答える 1

0

R.array。???? 渡される文字列(文字列の内容)である必要があります。これは、フォローアップする配列の名前だからです。

getIdentifier()次の方法を使用します。

Intent launchingIntent = getIntent();
String content = launchingIntent.getData().toString(); // this returns the Uri, are you sure you didn't want to get the text from an extra field set in the Intent
int id = getResources().getIdentifier(content, "array", getPackageName());
setListAdapter(ArrayAdapter.createFromResource(getApplicationContext(), id, R.layout.main));

1つのlistViewを取得して、同じアクティビティで別のListviewを開き、前のListViewを閉じようとしています。

戻るボタンの機能が失われるため(ユーザーを混乱させる可能性があります)、これに反対することをお勧めします。代わりに、関連データを渡すさまざまなアクティビティを使用するIntentsか、フラグメントを使用してください(特にListFragments)。

于 2012-08-12T12:39:00.513 に答える