0

こんにちは仲間のプログラマー、私はこのコードを持っています

public class IdiomsCollection {

private ArrayList<Idiom> idiomsList = new ArrayList<Idiom>();

public IdiomsCollection() {
    loadIdioms();
}

private void loadIdioms() {

    //creating new items in the list
    Idiom i1 = new Idiom();
    i1.setPhrase("Piece of cake");
    i1.setMeaning("When something is easy to do");
    i1.setUsage("That test that I took was a piece of cake");
    idiomsList.add(i1);
}
}

ArrayList のコンテンツを別のクラスの onCreate() メソッドに追加したいので、アプリを実行すると画面にリストが表示されます。それを行う方法がわからないのですが、誰か助けてもらえますか?

4

2 に答える 2

0

継承を利用します。このようなクラスを作成します

public class IdiomsCollection extends ArrayList<Idiom> {


public IdiomsCollection() {
    loadIdioms();
}

private void loadIdioms() {

    //creating new items in the list
    Idiom i1 = new Idiom();
    i1.setPhrase("Piece of cake");
    i1.setMeaning("When something is easy to do");
    i1.setUsage("That test that I took was a piece of cake");
    this.add(i1);
}
}

そして、ListView に ArrayList のデータを入力する方法を読んでください。

于 2013-04-24T19:30:11.630 に答える
0

ArrayAdapter を使用することをお勧めします。特に必要がない場合は、ListView の行に標準レイアウトを使用できます。多かれ少なかれ、コードは次のようになります。

public class IdiomsCollection {

.....
  public List<Idioms> getIdiomsList() {
     return idiomsList;
  }

}

私たちの活動では

public void onCreate(..) {

 ListView lv = (ListView) findViewById(R.id.listView);
 List<Idiom> idiomList = ( new IdiomsCollection()).getIdiomsList();
  final ArrayAdapter<Idiom> aAdpt =
        new ArrayAdapter<Idiom>(this,                 
               android.R.layout.simple_list_item_1, idiomListList);

  lv.setAdapter(aAdpt);  

}

IdiomClass に toString メソッドを提供し、Activity のレイアウトを提供します。リストビュー行に慣用句データを表示する方法をより詳細に制御したい場合は、カスタム アダプターを実装できます。ここで ArrayAdapterの私のブログを見てください。実際の例を見つけることができます。また、独自のアダプターを作成したい場合は、こちらのブログもご覧ください。

于 2013-04-24T20:04:29.943 に答える