Bläddra i källkod

[FAQ][Bug] 질문 텍스트와 화살표 버튼 클릭시 리스트 확장되게 수정

Hasemi 7 år sedan
förälder
incheckning
05f6939976

+ 24 - 1
app/src/main/java/kr/co/zumo/app/lifeplus/view/fragment/faq/FAQExpandableListViewAdapter.java

@@ -56,9 +56,32 @@ public class FAQExpandableListViewAdapter extends RecyclerView.Adapter<RecyclerV
   public void onBindViewHolder(@NonNull RecyclerView.ViewHolder holder, int position) {
 
     FAQExpandableViewHolder viewHolder = ((FAQExpandableViewHolder) holder);
-
     FAQBean bean = data.get(position);
     viewHolder.bind(bean);
+    viewHolder.textViewQuestion.setOnClickListener(new View.OnClickListener() {
+      @Override
+      public void onClick(View view) {
+        boolean isExpanded = bean.isExpanded();
+        bean.setExpanded(!isExpanded);
+        viewHolder.changed(bean.isExpanded());
+
+        if (null != openedHolder) {
+          openedBean.setExpanded(false);
+          openedHolder.changed(false);
+          openedBean = null;
+          openedHolder = null;
+        }
+
+        if (bean.isExpanded()) {
+          openedHolder = viewHolder;
+          openedBean = bean;
+        }
+
+        // 홀더의 영역이 뷰안으로 들어오도록 스크롤 시킨다.
+        recyclerView.scrollToPosition(position);
+      }
+    });
+
     viewHolder.buttonArrow.setOnClickListener(new View.OnClickListener() {
       @Override
       public void onClick(View view) {