2011-08-11 2 views
0

에서 연락처를 가져... 내가 안드로이드에서 연락 전화 번호를하고 싶지만 지금까지의 내가 자습서를 발견, 그렇지 않은 그들이 접촉에 나타나는 순서로 오름차순으로 번호를 끈다 안드로이드

연락처 목록에서 정확한 순서로 숫자를 얻기 위해 코드를 수정하려면 어떻게해야합니까 ??

Cursor cursor = getContentResolver().query(Phone.CONTENT_URI, new String[]{Phone.NUMBER}, null,null, null); 
ArrayList <String> nr_formatat = new ArrayList <String>(); 
if (cursor != null) { 

    while (cursor.moveToNext() == true) 

     nr_formatat.add(cursor.getString(cursor.getColumnIndex(Phone.NUMBER))); 
    } 
+1

연락처 목록의 기본 순서는 알파벳순의 오름차순입니다. 임의의 순서로 연락처 목록을 자유롭게 재정렬하지 않는 한, 해당 주문은 기본 주소록 응용 프로그램에서 처리/저장됩니다. 그게 네가 얻고있는거야? –

+0

연락처 목록에 있다고 가정하면 : (Anna, 0342), (Lulu, 0311), (John, 0088); 그들이 나타나는 순서는 다음과 같습니다 : 0088, 0311, 0342 오름차순으로, 알파벳 순으로 이름을 붙이고 싶습니다. 0342, 0311, 0088. 고맙습니다. – Madrugada

답변

0

연락처 목록의 연락처 순서에 따라 다릅니다. 메뉴 버튼을 누르고 '표시 옵션'을 탭하십시오. 그 외에도, 당신은 당신의 질문에 충분한 대답을하지 못합니다.

내가 볼 수있는 것에서는 잘못된 방향으로 가고 있습니다. 이 예제 응용 프로그램을 살펴볼 것입니다. 그것은 당신과 다른 방식으로 연락처를 가져오고 원하는대로 정렬 할 수 있습니다.

http://developer.android.com/resources/samples/BusinessCard/src/com/example/android/businesscard/index.html

+0

알파벳순으로되어 있지만 숫자는 오름차순입니다. (아시다시피, 우리는 두 곳에서 연락처 이름과 전화 번호를 얻습니다. 숫자가 오름차순입니다 알파벳 순서로 이름을 얻습니다. 나는 그들 사이의 통신을 얻을 수 있으면 좋겠어, 나는 연락처 목록을 표시해야합니다 – Madrugada

1

당신은 그것에 대해 잘못된 길을 것입니다. CONTACT_ID에 대해 전화 번호를 쿼리해야합니다. 그렇지 않으면이 둘 사이의 통신이 이루어지지 않습니다. this tutorial을 살펴보십시오.

+0

감사합니다 당신의 튜토리얼 : 어떻게이 루프 아래의 전화 번호를 얻는 동안 (pCur.moveToNext()) { \t \t // 전화 \t 뭔가 수행} 당신이 얻을 방법을 변경할 필요가 없습니다 – Madrugada

+0

을 전화 번호, 당신은 여전히 ​​getColumnIndex (Phone.NUMBER) 메서드를 사용할 수 있습니다. 유일한 변경 사항은 sqlite db의 쿼리입니다. –

0

경우 작동해야 다음 : 갖는다 ID 1 (루루, 0311)는, (요, 0088)는 ID (3)

Cursor cursor = getContentResolver().query(Phone.CONTENT_URI, new String[]{Phone.NUMBER}, null,null, new String[]{Phone.ID}); 
ArrayList <String> nr_formatat = new ArrayList <String>(); 
if (cursor != null) { 

    while (cursor.moveToNext() == true) 

     nr_formatat.add(cursor.getString(cursor.getColumnIndex(Phone.NUMBER))); 
    } 

에게 컨텐트 리졸버의 마지막 변수 ID 2 있음 (안, 0342)() .query()는 정렬 순서를 취합니다. 그래서 당신의 연락처 목록이 ID에 정렬되어 있다면 여기에 ID와 같은 것을 넣으십시오. ConecntResolver().Query() info here.

관련 문제