마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

listView.setAdapter(adapter)에 저장한 값을 불러오는법

0 추천

내부 데이터 베이스를 사용해서 입력 받으면 리스트뷰에 추가되게 했습니다.

리스트뷰를 선택하면 바로 전화,문자를 할 수 있도록 코딩 중인데 막히는 부분이 있어서 질문합니다.

아래 코드는는 추가 버튼을 눌렀을때 리스트뷰에 추가 되는 함수(버튼클릭)와 listview 클릭 리스너입니다.

edittext에 이름과 번호를 입력하고 추가 버튼을 누르면 리스트뷰에 이름과 번호가 저장이 되고

리스트뷰를 클릭했을때 선택한 뷰 값에 번호를 받아서 전화, 문자를 하게 하고싶습니다..

아래처럼 뷰에 저장이되고, 뷰를 클릭했을때 선택한 리스트뷰의 값을 어떻게 불러와야 하는지 감히 잡히질 않습니다ㅜㅜ 어떻게 해야 할까요? 

도움 좀 부탁드립니다 ㅜㅜㅜㅜㅜ

String name = addTxt1.getText().toString();
String info = addTxt2.getText().toString();
if (name.equals("") || info.equals("")) {
    Toast.makeText(getApplicationContext(), "정보를 입력해 주세요", Toast.LENGTH_SHORT).show();
    return;
} else {
    db.execSQL("INSERT INTO tableName VALUES (null, '" + name + "', '" + info + "');");
    Toast.makeText(getApplicationContext(), "추가 성공", Toast.LENGTH_SHORT).show();

    addTxt1.setText(""); //입력시 EditText에 입력된값 지움
    addTxt2.setText("");
    cursor = db.rawQuery("SELECT * FROM tableName", null);
    startManagingCursor(cursor);    //엑티비티의 생명주기와 커서의 생명주기를 같게 한다.

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

    while (cursor.moveToNext()) {
        adapter.add(cursor.getString(1));
        adapter2.add(cursor.getString(2));
    }


    listView.setAdapter(adapter);
    listView2.setAdapter(adapter2);

}   
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
    @Override
    public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
        Intent call = new Intent(Intent.ACTION_CALL, Uri.parse("tel:"));
        startActivity(call);
    }
});
익명사용자 님이 2018년 11월 5일 질문

1개의 답변

0 추천
 
채택된 답변
SELECT한 값을 ArrayList에 값을 저장 한뒤, listview.setonItemClick에서 클릭을 하면 onItemClick의 position으로 현재 리스트의 몇번째 값을 클릭 했는지 알 수 있습니다. 그 position을 가지고 ArrayList의 값을 불러오면 됩니다.
뱅구다 (11,280 포인트) 님이 2018년 11월 6일 답변
아? 감사합니다 그렇게 해볼게요!
...