2014-11-17 2 views
0

47deg/android-swipelistview를 사용하고 있으며 SWIPE_ACTION_DISMISS 모드를 완벽하게 사용합니다.swipelistview setOnClickListener 닫기

하지만 다른 활동에서 삭제 버튼과 함께 SWIPE_ACTION_REVEAL을 사용해야합니다. 그래서 어댑터, 요소를 삭제하기 위해 내가 할이 :

공공보기의 getView (INT 위치보기 convertView, 뷰 그룹의 부모) {

final int pos = position; 
    final View conv = convertView; 
    final ViewGroup par = parent; 
    //View v = convertView; 
    ViewHolder holder; 
    if (convertView == null) { 

     LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
     convertView = inflater.inflate(R.layout.afficheitem_swipecontact, parent, false); 

     holder = new ViewHolder(); 


     holder.bloquer = (Button) convertView.findViewById(R.id.bloquer); 


     convertView.setTag(holder); 
    } else { 
     holder = (ViewHolder) convertView.getTag(); 
    } 

    ((SwipeListView)parent).recycle(convertView, position); 
    // Get item 

    BeanMembre membre = (BeanMembre) getItem(position); 

    holder.membreName.setText(membre.getPseudo()); 





    holder.bloquer.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      Toast.makeText(context, R.string.bloquer, Toast.LENGTH_SHORT).show(); 

      listMembre.remove(pos); 
      notifyDataSetChanged(); 
     } 
    }); 




    return convertView; 

내가 요소가 제거되고, 그렇게되면하지만, 목록의 항목이 새로 고침되지 않습니다. 새로운 요소를보기 위해 아래로 스크롤해야합니다. 웹, 스택 또는 샘플에서 찾지 못했습니다.

신고 해 주시겠습니까? 샘플 가져 왔니? 애니메이션 해체를 생성하려면 어댑터에서 dismiss 메소드를 호출해야합니까?

감사합니다.

+0

더 많은 어댑터 코드를 게시 할 수 있습니까? –

+0

완료, getView 메서드를 추가하지만 내 어댑터가 크기 때문에 일부 물건을 삭제합니다. 그러나 우리는 필요한 것을 볼 수 있습니다. – iometrine

답변

0

찾았습니다. 아래의 솔루션을 참조하십시오.

holder.supprimer.setOnClickListener(new View.OnClickListener() { 
@Override 
public void onClick(View v) { 
    Toast.makeText(context, R.string.supprimer, Toast.LENGTH_SHORT).show(); 
    //we can call dismmiss method like this. 
    ((SwipeListView)par).dismiss(pos,true); 
    } 
});