1

私の現在の問題は、連絡先を表示するために使用している ListView があることです。onItemClick を設定して連絡先の名前を取得し、それを p2 という TextView に設定したいと思います。現在のコードは次のとおりです。

protected void onCreate(Bundle savedInstanceState){
        super.onCreate(savedInstanceState);
        setContentView(R.layout.setp2);

        cursor = managedQuery(ContactsContract.Contacts.CONTENT_URI,null,null,null,null);

        String[] from = new String[]{ContactsContract.Contacts._ID,ContactsContract.Contacts.DISPLAY_NAME};
        int[] to = new int[]{R.id.id_text,R.id.name_text};

        final SimpleCursorAdapter adapter = new SimpleCursorAdapter(setp2.this,R.layout.setp2_layout,cursor,from,to);

        ListView list = (ListView)findViewById(R.id.contact_list);
        list.setAdapter(adapter);

        list.setOnItemClickListener(new AdapterView.OnItemClickListener() {

            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position,
                    long id) {              
            }
        });


}

基本的に、onItemClick で何をする必要があるのか​​ わかりません。助けていただければ幸いです。

4

3 に答える 3

1

onItemClick で、そのリスト項目に関連付けられたビューのインスタンスを取得します。そのビューから、それに関連付けられたテキストを取得し、p2 TextView に設定できます。あなたの要件に対する私の理解が正しければ、コードは次のようになります。

 list.setOnItemClickListener(new AdapterView.OnItemClickListener() {

        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position,
                long id) { 
               CharSequence name = ((TextView)view.findViewById(R.id.name_text)).getText();
               //Set this to your textview in P2
               tvP2.setText(name);

        }
    });
于 2013-04-14T06:23:51.993 に答える
0
@Override
        public void onItemClick(AdapterView<?> parent, View view, int position,
                long id) { 
            cursor.moveToPosition(position);
            String name = cursor.getString(cursor.getColumnIndex(
                            ContactsContract.Contacts.DISPLAY_NAME));
             p2.setText(name);
        }
    });
于 2013-04-14T06:38:24.780 に答える
0

をセットアップしSimpleCursorAdapter.CursorToStringConverterてアダプターに設定し、convertToString(Cursor cursor)アイテムのクリック時にテキストを取得するために使用します。

(Cursor) simple.getItem(position)
于 2013-04-14T06:26:53.957 に答える