0

文字列の分割について前に質問しましたが、十分に明確ではなかったかもしれません。

私の問題の例を示す簡単なアクティビティを作成しました。

サーバーから長いメッセージが届きました。

このメッセージを分割してリストビューに入れる必要があります。コードを示します。

public class Page1 extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity6);

    String message = "0---12,,,2013-02-12 08:04,,,this is a test,,,0---11,,,2013-02-12 08:05,,,and this is why it is damaged,,,0---10,,,2013-02-12 08:06,,,what comes from select data randomly";

    String[] variables = message.split(",");

    ListView listView1 = (ListView) findViewById(R.id.listView12);
    String[] items = { variables.toString() };

    ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
            android.R.layout.simple_list_item_1, items);

    listView1.setAdapter(adapter);

}

}

ここで、分割がコンマ ", " であるとしましょう。

0---12      ------->ID1

2013-02-12 08:04  ------------>date1

this is a test   ----------->subject1

0---11    ------->ID2

2013-02-12 -8:05   ------------>date2

and this is why it is damaged   ----------->subject2

などなど、今私ができないことは、これらの文字列をループに入れてリストビューに書き込み、このように subject1 が item1 にあり、date1 が subitem1 にあるようにすることです。

Subject1

Date1

------

Subject2

Date2

------

これは、リストビューがどのように見えるかです

誰でもこれで私を助けてくれますか?

4

2 に答える 2

0

ArrayAdaper1本のみの商品ですので、予めご了承くださいTextViewドキュメントから

任意のオブジェクトの配列によってサポートされる具体的な BaseAdapter。デフォルトでは、このクラスは、提供されたリソース ID が単一の TextView を参照することを想定しています。

サブクラス化ArrayAdapter( docsgetView ) を検討し、そのメソッドをオーバーライドします。

于 2013-04-12T15:14:16.113 に答える
0

ArrayAdapterオブジェクトから必要な方法でデータを入力するには、カスタムを作成する必要がありListViewます。

この手法の利点は、メモリの消費を抑えるためにViews内部をリサイクルするビュー リサイクル メカニズムを利用できることです。ListView

要するに、次のことを行う必要があります。

1.単一行のデータを表すオブジェクトを作成します。

2.ArrayListこれらのオブジェクトの を作成します。

3. ListView を含むレイアウトを作成するか、コードを使用してメイン レイアウトに ListView を追加します。

4. 1 行のレイアウトを作成します。

5.ViewHolderの観点からデータ行の視覚的側面を表す を作成しますViews

6.ArrayAdapter必要に応じて行を設定するカスタムを作成します。その中で、getViewメソッドをオーバーライドし、正しい行に対してposition受け取ったパラメーターを使用して行Viewを示しますindex

7.最後に、これArrayAdapterListViewinに割り当てますonCreate

これを実装する方法については、私が書いた次のブログ投稿を読むことで理解できます。

カスタム ArrayAdapter を作成する

于 2013-04-12T15:17:19.927 に答える