나는 사용자 정의 ArrayAdapter와 함께 사용자 지정 ListView를 설정했습니다. 한 행은 10 개의 버튼으로 구성됩니다. 단추를 클릭 한 후에 단추 캡션을 변경할 수 없습니다. getView 메소드 안에는 모든 버튼에 대한 홀더가 있습니다.) (내가 b.getText를 호출 할 때 지금안드로이드에서 ListView 내부 버튼의 텍스트를 변경
MyHolder h = (MyHolder) getListView().getAdapter().getView(position, null, null).getTag();
Button b = h.myButton;
: 크리크 리스너는 (나는 그렇게 생각), 내가 버튼의 참조를 얻을 수 있어요 올바르게 작동하고, 주요 활동입니다 , 그것은 나에게 클릭 한 버튼의 텍스트를 준다. 하지만 시도 할 때 : b.setText ("xxx"); 버튼의 텍스트가 바뀌지 않습니다.
어떤 아이디어가 있습니까?
감사합니다. 그러나 내 문제는 완전히 해결되지 않았습니다. 첫 번째 버튼을 누르면 내 행의 첫 번째와 두 번째 버튼의 텍스트를 변경해야합니다. 내 행의 다른 버튼에 대한 참조는 어떻게 얻을 수 있습니까? – Dusan
각 버튼의'setTag()'를 사용하여 어댑터의'getView()'에 일치하는 버튼에 대한 참조를 저장할 수 있습니다. 또는'getParent()'와'getChildAt()'를 사용하여 일치하는 버튼을 찾을 수 있습니다. – Sam