2013-04-26 2 views
0

영어를 조금 말하고, 읽는다면 미안 해요.안드로이드의 배열에서 contentvalue (키, 값)를 얻을 수있는 방법

이것은 내 문제입니다. Asynchronous를 확장하여 데이터베이스에 값을 설정하는 클래스를 만들었습니다. 하지만 제네릭 형식에서 설정 한 paremeter는 ContentValues입니다.

class putInformationToDB extends AsyncTask<ContentValues, Integer, Integer> 

그런 다음 execute 메서드를 호출하여 실행할 때마다 이전에 레지스트리와 대화 상자에서 모든 값을 가져온 contentvalues를 설정했습니다. 하지만 지금 방법 :

protected Integer doInBackground(ContentValues... params) 

나는 문제가 있습니다. paremeter는 배열 contentvalues이며 값/키를 가져 오는 방법을 모르겠습니다. contentvalues라면 iterator와 map으로 값을 되돌려 놓겠습니다. 하지만 나는 contentvalues에서 그것을 변환하는 방법을 먼저 모른다.

내가 문자열과 같은 매개 변수의 다른 종류의를 통과 한 후 루프를 가져오고 ContentValues에 넣어 대해 생각했다.

답변

3

당신은 단순히 배열을 반복 할 수 있습니다

for(ContentValues c : params){ 
    //do something with c 
} 

또는 당신은 당신이 액세스 할 수있는 배열의 유일한 요소가 있다고 확신하는 경우 직접 :

ContentValues c = params[0]; 
+0

감사합니다. 음, 혼란 스러웠습니다. –

+0

조금 늦었지만 "foreach는 contentvalues에 적용 할 수 없습니다"라는 메시지가 나타납니다. – Zero

+0

반복은 특정 ContentValues가 아닌 ContentVal 배열을 통해 이루어집니다. ContentValues를 반복하려면 다음을 사용해야합니다. for (Entry entry : contentValues.valueSet()) { ... } – eltabo

1

당신이 배열을 통과 한 경우. 당신은 단순히 그것을 얻을 수 있습니다 :-(사용 `ContentValues ​​[] 편곡 = params를 [0]

관련 문제