2011-01-28 8 views
0

내 문제는 여기에 있습니다.Android - AutocompleteTextView 드롭 다운 질문

String[] list = ws.getList() ///returns a String[] of 2900 elements. 

AutoCompleteTextView actv= (AutoCompleteTextView)findViewById(R.id.field); 

ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, R.layout.dropdownmenu, list); 
actv.setAdapter(adapter); 

내 질문은 내 응용 프로그램을 실행할 때 내가 그 안에 입력 할 때마다, 내 AutoCompleteTextView에 텍스트의 어떤 종류를 생성하지 않습니다 ...입니다. 그러나, 내 목록을 좋아한다면, 30 요소를 단축하면, 그것은 완벽하게 작동합니다. 자동 완성 텍스트 뷰는 일정량의 항목으로 제한됩니까?

감사합니다.

답변

1

저는 약 5000 개의 항목을 가지고 있으며 잘 작동하는 응용 프로그램에서 자동 완성 텍스쳐 뷰를 가지고 있습니다. 그러나 디버깅하지 않고 실제 장치에서 true로 설정하면 속도가 매우 느립니다. 따라서 에뮬레이터에서 실행하면 필터링을 수행하고 제안 사항을 표시하는 데 긴 긴 형식이 필요하므로 아무 것도 볼 수 없을 가능성이 높습니다. 내 지식

는 항목

0

저도 같은 문제에 봉착했습니다의 수에 제한이 없습니다. 나는 문제를 줄이기 위해 많은 테스트를 해왔다.

xml 파일을 사용하여 자동 완성 필드에 배열을 제공하고 있습니다. 2.2에서 배열이 너무 크면 활동이 중단됩니다. 2.3에서 동일한 배열은 전혀 문제를 일으키지 않습니다.

내 배열은 약 950 개의 노드로 구성됩니다. 나는 그것을 약 200 정도로 잘랐다. (나는 충돌을 일으키는 정확한 숫자를 기억하지 못했다.)

0

필자는 비슷한 문제가 있었지만 친숙하지 않은 데이터베이스에서 데이터가 추출 되었기 때문에 내 String 중 일부가 null이거나 비어있었습니다. 이렇게 목록을 만들었고 정상적으로 작동합니다. 목록의 빈 문자열 또는 널 (null) 문자열은 열지 못하도록 드롭 다운을 방지합니다. 각 문자열에 값이 알고 있기 때문에

if(mystring!=null && !mystring.isEmpty()) { //add to list here }

어쩌면 30의 테스트가 작동된다. 나는 비슷한 테스트를했고 그것이 효과가 있다는 것을 발견했다. 그것은 위의 해결책/아이디어로 나를 이끌었다. ... 2 년 후 ... 그가 여전히이 문제에 집착하고 있는지 궁금해한다.)

관련 문제