0

やあみんなここに私の問題があります。ListView内に(アルファベット順に整理された)データの長いリストがあるので、ユーザーの生活を楽にするために、に含まれている文字(TextView内)をクリックして、探しているリストの一部に直接アクセスできるようにします。テーブル(リストの上)。

したがって、ユーザーには次のように表示されます。

ABCDEF.... アイテム
1
アイテム2
アイテム3 ......。

「D」をクリックすると、ScrollTo(position)のようなものを使用してリストのその部分に移動します。

TextViewごとに26個のonClickリスナーを作成せずにこれを行うにはどうすればよいですか?私のアイデアは、テーブルを使用して、TableRowリスナーがアクティブ化されたときにクリックされたTextViewを取得することでした。

また

これを行うための最良の方法は何でしょうか?

4

1 に答える 1

0

私はLinearLayoutwithを使用し、各文字にsandroid:orientation="horizontal"を入れます。ButtonそれぞれonClickのxmlには、関数を呼び出すがあります。次に、関数で次のようなことを行います

int id = v.getId();
    Button btn = (Button) findViewById(id);

    String letter = btn.getText().toString();

次に、リストを検索するために計画した方法でその文字を使用します。関数を使用Stringするか、各文字をリスト内の番号に割り当てます。このようなものでは、onClickリスナーは1つだけViewで、リストで検索するためにクリックされた方を使用します

于 2013-02-23T00:23:38.357 に答える