2010-12-28 6 views
0

ListViewをクリックすると、別のクラスを開きたいと思っています。私はすでにonItemClickListenerを作成していますが、そのクラスを開いていますが、List内のItemに関連付けられたクラスを開くことができるのではなく、1つのクラスだけを開くことができます。OnItemClickListenerからの位置に応じてインテント別に異なるクラスを開く

OnItemClickLcistererに "int position"というパラメータがありますが、使用方法はわかりません。

私のリストには非常に多くの異なる項目があり、リストからその項目に関連付けられたOnItemClickListenerから特定のクラスを開きたいとします。

ここで私は私が私のOnItemClickListenerでやっているものを置いています:

nameOfStates.setOnItemClickListener(新OnItemClickListener() { ます。public void onItemClick(AdapterView親、ビュービュー、int型の位置、長いID) { テントmIntent =新しいテント(StateSelection.this、AlaskaZone.class); startActivity(mIntent);

   Intent myIntent = new Intent(StateSelection.this, AlabamaZone.class); 
       startActivity(myIntent); 

      } 
     }); 

になっている私のリストの項目(名前)アラスカがありますAlaskaZoneクラスを開き、myhリストのItem(name)AlabamaもAlabamaZoneクラスを開くことになっています。

どのようにすれば特にそうすることができますか?

誰でもお手伝いできますか?

おかげで、 デビッド

答えて

1

そのリスナーでシンプル入れSWITCH-ケースブロックと例のためにその位置を使用するには、0の位置はあなたのリストに非常に最初の項目を反映するというように、すべてのケースのためには、さまざまな活動を開始します

nameOfStates.setOnItemClickListener(new OnItemClickListener() 
    { 
     public void onItemClick(AdapterView parent, View view, int position, long id) 
     { 
      switch (position) 
      { 
       case 0: 
        // Start activity that you want to when 1st item of your list is selected 
        break; 

       case 1: 
        // Start activity that you want to when 2nd item of your list is selected 
        break; 
      }    
     } 
    }); 
+0

状態を識別するのに役立つと思われる、クリックされた行を識別するためにonItemClickメソッドに引数postion存在を使用それはできませんでした。私は私のコーディングでいくつかの間違いをしているかもしれません。 –

0

私が持っているので、あなたが私を示してくださいすることができ今度はあなたが

+0

@ Frieze-私はいくつかの方法を試してきたが成功しなかったので、私はそのポジションをどのように使うことができるのか教えてもらえますか? –

+0

david、どのようにリストに状態を表示しますか?リストを作成するためにアダプタを使用する必要がありますか?あなたのアダプタコードを共有して、どこに変更を加えるべきかを指摘できるでしょうか? – pankajagarwal

関連する問題