2013-07-24 2 views
0

내가 이전에 PHP와 JS 일하고, 최근에 내가 그러나 안드로이드 목록보기 일하고, 나는 목록보기에 대한 사용자 지정 어댑터를 만드는 문제가 발생하여왜 안드로이드리스트 뷰의 arg0가 점진적으로 업데이트되지 않습니까?

public View getView(int arg0, View arg1, ViewGroup arg2) { 
     // TODO 
     if (arg1 == null) { 
      arg1 = myInflater.inflate(R.layout.grid, arg2, false); 
     } 
     TextView name = (TextView) arg1.findViewById(R.id.text1); 
     TextView desc = (TextView) arg1.findViewById(R.id.text2); 
     ImageView image = (ImageView) arg1.findViewById(R.id.image1); 
     if (arg0 < images.length) { 
      image.setImageResource(images[arg0]); 
     } 
     name.setText(names[arg0]); 
     // name.setText(arg0); 
     // desc.setText(images.length); 
     desc.setText(description[arg0]); 
     return arg1; 
    } 

나는 내용의 3 배열이되어있는 문제 첫 번째 두 배열에 대해 listview 격자에 전달하면 10 개의 요소가 있고 마지막 요소에는 3이 있습니다. 그래서, 그것은 최후의 경계를 넘었습니다. 3을 초과하는지 확인하기위한 조건을 추가했지만 행에 따라 args0이 증가하지 않는 것 같습니까?

if (arg0 < images.length) { 
       image.setImageResource(images[arg0]); 
      } 

첫 번째 3 개의 행과 일부 다른 행에도 이미지가 설정되어 있는데 왜이 문제를 해결할 수 있습니까? 덕분에

답변

1

먼저, "image.length"대신 "image.length()"를 올바르게 사용하십시오.

초, Android Developer for ImageView, 을 확인하면 ImageView의 .length()와 같은 메서드가 없다는 것을 알 수 있습니다.

내 첫 번째 추측은 ImageView에 값이 포함 된 ArrayList를 섞어서 표시한다는 것입니다.

관련 문제