2016-05-24 11 views
-1

ArrayList1、ArrayList2、ArrayList3 ... ArrayList1には、GridViewのアンドロイドで表示される画像がいくつかあります。画像をクリックすると、ArrayList2が表示されますGridViewとArrayList2にも画像があります。 ArrayList2とArrayList3と同じです。これを達成する方法複数のArrayListをGridView Androidで1つずつ呼び出す方法

答えて

1

すべてのArrayListに同じオブジェクトタイプが含まれていると仮定します。

新しいArrayListを作成し、AdapterArrayListを呼び出してアダプタのメインArrayListとして使用できるようにします。 ArrayList1を使用する場合は、ArrayArrayListのclear()要素、次にArrayList1のaddAll()要素を使用します。アダプタの場合はnotifyDataSetChanged()です。

ArrayList2とArrayList3を使用する場合も同じ操作を行います。

[編集]

例えば:

public class MyAdapter extends BaseAdapter { 
List<Image> mImagesList; 

    public MyAdapter(List<Image> imagesList) { 
     mImagesList = imagesList; 
     ... 
    } 
} 

そして、あなたが持っているのArrayListでそのアダプタを使用する:

public class MyActivity extends Activity { 
    MyAdapter mAdapter; 
    List<Image> mainList = new ArrayList(); 
    List<Image> arrayList1 = new ArrayList(); 
    List<Image> arrayList2 = new ArrayList(); 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.my_activity); 
     mAdapter = new MyAdapter(mainList); 
     myListView.setAdapter(mAdapter); 
    } 

    private void switchToList1() { 
     mainList.clear(); 
     mainList.addAll(arrayList1); 
     mAdapter.notifyDataSetChanged(); 
    } 

    private void switchToList2() { 
     mainList.clear(); 
     mainList.addAll(arrayList2); 
     mAdapter.notifyDataSetChanged(); 
    } 
} 
+0

私はそのよう@AbdallalhAlarabyは私の例やコード何かを与えます参照できる –

+0

@AbdallalhAlaraby選択したグリッド要素のIDを次のグリッドに送信するにはどうすればよいですか? –

+0

これは、それが自分のスレッドであるはずの全く異なる質問です。とにかく、アダプタの 'getView()'メソッドの中に 'OnClickListener'を定義することができます。 [このリンク]をチェックしてください(http://stackoverflow.com/questions/20191914/how-to-add-gridview-setonitemclicklistener) –

関連する問題