안드로이드 개발 질문/답변
(글 수 45,052)
갤럭시탭으로 책에 예제를 따라 하고 있는 중에 아래 코드에서 빨간색으로 표시한 부분에서
Contacts.Peoples 요 부분과 People.NAME 요 부분에 검은색 줄이 그어져 있으면서 리스트를 가져오지 못하는데요.
예제 내용은 대충 이렇습니다.
"연락처 선택" 이라는 버튼을 클릭하면 연락처가 죽 들어있는 다른 액티비티를 띄우고, 그중에서 임의의 이름을 클릭하면 그 이름이 원래의 액티비티에 표시가 되어야 하는 예제에요.
현재 버튼을 클릭하면 새로운 액티비티가 띄워지긴 하는데 리스트가 보이지 않아요.
왕초보라 어떻게 고쳐야 할지 난감해요.
도움 부탁드려요.
package com.paad.contactpicker;
import android.app.Activity; import android.content.Intent; import android.database.Cursor; import android.net.Uri; import android.os.Bundle; import android.provider.Contacts.People; import android.widget.ListView; import android.view.View; import android.widget.AdapterView; import android.widget.ArrayAdapter; import android.widget.Button; import android.widget.ListView; import android.widget.SimpleCursorAdapter; import android.widget.AdapterView.OnItemClickListener; import android.widget.TextView;
import java.util.ArrayList;
@SuppressWarnings("deprecation")
public class ContactPicker extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
setContentView(R.layout.main);
Intent intent = getIntent();
String dataPath = intent.getDataString();
final Uri data = Uri.parse(dataPath + "people/");
final Cursor c = managedQuery(data, null, null, null, null);
String[] from = new String[] {People.NAME};
int[] to = new int[] {R.id.itemTextView};
SimpleCursorAdapter adapter = new SimpleCursorAdapter(
this,
R.layout.listitemlayout,
c,
from,
to);
ListView lv = (ListView)findViewById(R.id.contactListView);
lv.setAdapter(adapter);
lv.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view, int pos, long id) {
c.moveToPosition(pos);
int rowId = c.getInt(c.getColumnIndexOrThrow("_id"));
Uri outURI = Uri.parse(data.toString() + rowId);
Intent outData = new Intent();
outData.setData(outURI);
setResult(Activity.RESULT_OK, outData);
finish();
}
});
}
}



