나는 목록이있는 Adapter
의 RecyclerView
사용자 지정이 있습니다. 확인란을 누를 때Android에서 두 레이아웃의 요소를 참조하는 방법은 무엇입니까?
holder.checkBox.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
가 감지 할 수 : 목록에있는 각 요소는 사용자 지정 내가 사용하는 Adapter
에 핸들이있는 체크 박스가 있습니다.
문제는 단추가 있지만보기 클래스에서 처리된다는 것입니다. 이 클래스에서는 버튼이있는 레이아웃을 다음과 같이 참조 할 수 있습니다.
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
final View buttonInflater = inflater.inflate(R.layout.fragment_button,null);
하지만 사용자 지정 어댑터에서는이 작업을 수행 할 수 없습니다. 내가해야 할 :
public MyItemHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.item_layout, parent, false);
그래서 한 번 내가 참조를 해당 클래스에서 모두 레이아웃을 가지고, 나는 또한보기 클래스 참조 사용자 정의 어댑터의 레이아웃의 버튼에 대한 참조를 만들 수 있다고 생각했다. 이 유사 :
public MyItemHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.item_layout, parent, false);
View buttonView = LayoutInflater.from(parent.getContext()).inflate(R.layout.fragment_button, parent, false);
하지만 버튼을 참조하려고 할 때 참조 할 수없는 것 같다.
내가 체크 박스가 하나 개의 단위를 선택할 때마다 버튼 텍스트에 추가됩니다 것을 원하기 때문에 내 사용자 지정 어댑터보기
에서 버튼을 참조 할 이유
. 예를 들어, 버튼의 목록에있는 확인란을 처음 선택하면 텍스트는 1이어야하고, 두 번째는 2가되어야합니다. 아무것도 쓰지 나던int sum = 0;
holder.checkBox.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if(buttonView.isChecked()){
sum = sum + 1;
checkBox.setText("" + sum);
}else{
sum = sum - 1;
checkBox.setText("" + sum);
}
}
});
하지만이 버튼 : 내가 체크 박스를 누를 때
이
내가 내 사용자 지정 어댑터에있는 코드입니다.버튼에 어떻게 쓸 수 있습니까?
미리 감사드립니다.
그냥 질문입니다. 'mButton' 변수는 어디에 정의합니까? –
감사합니다. 알 겠어! 맞춤형 어댑터에 인포 더를 보내 주시길 부탁드립니다. 트릭이었습니다. :) –
좋아요. 죄송합니다. 그래도 대답을 좀 더 명확하게 업데이트했습니다 (비록 알아 냈지만). –