• 締切済み

listview とactivity について

android studio のアプリ制作でlistview とactivity についての使い方について、教えてください。初心者です。listview の画面と2つのactivities の遷移ぐらいだけは作成できます。 質問 : 20の国名をlistviewに並べて、各国名をクリックすれば、別の画面でその国の国旗の画像と簡単な説明文が読める内容です。新しいactivityを20個つくらずにする方法をわかりやすく教えてください。 ネットでずいぶん検索したんですが見当たりません。ある方から、”けんちんとん”さんというサイトを紹介されたのですが、少し古くかつeclipseなので設定が異なり、できませんでした。 初心者でわかりやすい動画やサイトが嬉しいのですが? よろしくお願いします。

みんなの回答

  • anmochi
  • ベストアンサー率65% (1332/2045)
回答No.1

まず最初にAndroidアプリ開発に対してAndroid StudioとEclipseでできる事に違いはない。これはこの2つのツールが同じだと言っている訳ではなく、どちらで操作しても得られる結果が同じだという事だ。これは「abcde」という5文字が書き込まれたテキストファイルを1つ作るのにメモ帳だろうとサクラエディタだろうと最終的な結果は同じというのと同じ意味だ。 さて、一画面目のActivityにListViewを設置し、その中に20の項目を入れてタップさせ、その後で20個のActivityに分岐させているのは二画面目のActivityに固定で情報を書いているからだ。 今回はListViewで20個のアイテムの判別(←何が押されたか)は出来ているとしよう。 そうすると必要なことはおのずと分かってくる。二画面目のActivityにListViewで何がタップされたかを教える機能と、教えられたアイテムを元に二画面目の内容を切り替える機能だ。 これはズバリIntentのExtraというデータを用いると良い。 「Intent putExtra」でぐぐればいくらでも情報は出てくるので詳しい記述内容は省くが、Activity間でデータのやり取りをする場合はこのExtraというものにデータを仕込むというのが一般的だろう。 受け取ったデータ、最悪の場合ListViewのタップされたindexでもいいけど、一画面目からどんな内容を二画面目へ何を渡して、二画面目はどう表示を切り替えるか、そこはあなたが考えるべきことだ。 たとえば、Extraで2文字の国コード(jpとかusとか)を受け渡して、二画面目はその国コードを元に画像やテキストを切り替える、という動きになるかも知れない。 もしこの直前の内容(たとえば~のところ)を読んで、何を言っているのか分からない(具体的なコードが無いから)、のであれば、あなたはAndroid開発以前にプログラムを作るすなわちデータ構造を決めてアルゴリズムを練るという言語以前の基礎が出来ていないという事だ。