2010-12-09 7 views
2

SoundBoard 응용 프로그램을 개발 중입니다. 내 클래스는 ListActivity를 확장하고 텍스트 뷰에 사용자가 클릭, 난 그 텍스트 뷰의 이미지를 변경해야 할 때 이제Android : ListView의 onItemClickListener()에서 TextView 가져 오기

[Image] [Text] 
[Image] [Text] 
[Image] [Text] 

을 다음과 같이 목록보기입니다. 나는 다음 코드에 의해 그것을 구현한다.

public void onItemClick(AdapterView<?> parent, View view, 
      int position, long id) { 

TextView tv1 = (TextView) view; 
//Here I change the image with tv1 as reference 
} 

는하지만 내가 선택한 텍스트 뷰를 얻을 수있는 다른 방법이 필요합니다. 위의 방법을 사용하여 이미지를 변경할 때 사용자가 목록에서 세 번째 행을 선택하면 두 번째 스크롤 페이지의 세 번째 행, 세 번째 스크롤 페이지의 세 번째 행 등에서 이미지가 변경됩니다. 필수 텍스트 뷰 이미지는 변경되지만 목록 스크롤시 곧 나오는 스크롤 페이지의 텍스트 뷰 하나가 변경됩니다. 당신이 내 문제를 가져 오기를 바랍니다. 어떤 도움을 주셔서 감사합니다. 감사합니다

답변

1

난 당신이보고있는 동작을 생각 텍스트 뷰에 추가 onClck 속성에 의해 당신이 시도 할 수 있습니다 내 자신을 테스트하지 않은 사실에서 온다 안드로이드는 ListView에서 사용 된 TextViews를 재활용합니다; 그래서 Adapter.getView()convertView 인수를 가지고 있습니다. (일단 텍스트 뷰는 화면에 스크롤 된 것 항목에 대한 다시 사용할 수는 convertView 인수를 통해 Adapter.getView()에 전달 될 수 있으며, 화면 밖으로 스크롤합니다.)

리스트 뷰에 android.widget.AbsListView.OnScrollListener를 추가하려고 할 수 주어진 시간에 목록의 어떤 항목이 화면에 있는지 추적합니다. Adapter.getView()을 다시 지정하여 이미지를 기본값으로 되돌리려면 (일반적으로 새로 표시된 항목에 적합한 이미지를 사용하십시오)

+0

코드를 도와주세요. 나는 초보자이기 때문에. 그리고 그것은 나에게 복잡하게 들린다. 답장을 보내 주셔서 감사합니다. – Vivek

+0

작성하기가 어려울 것이라고 생각하지 않지만 코드 시작 위치를 알기에는 코드를 잘 모릅니다. 최선의 방법을 사용하고 문제가있는 경우 여기에 코드를 게시하십시오 (또는 다른 질문에 답하십시오). –

0

내가
<android :onclick="name of function>

건배는, Kariyachan

+0

답장을 보내 주셔서 감사합니다. 이것은 좋은 생각 인 것으로 들립니다. 하지만 어떻게 함수에서 텍스트 뷰에 대한 참조를 얻을 수 있습니다. 함수에 매개 변수가 포함되어야합니까? – Vivek

+0

예. 예를 들어 myfunction (보기 v) 다음에는 fn에 의해 클릭 된 Textview의 ID를 얻을 수 있습니다. getId() 물건 응원하세요, Kariyachan – DroidBot

+0

코드를 도와 주시겠습니까? 그래서 나는 더 좋은 아이디어를 얻을 것이다. 감사. – Vivek