마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

안드로이드 커스텀 리스트뷰 애니메이션 질문

0 추천
 @Override
    public View getView(final int position, View convertView, final ViewGroup parent) {
        final ViewHolder vh;

        animation = AnimationUtils.loadAnimation(Exclusion_add_list.this, android.R.anim.slide_out_right);
        convertView.startAnimation(animation);

        if( convertView == null ){
            LayoutInflater inflater = (LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
            vh = new ViewHolder();
            convertView = inflater.inflate(R.layout.exclusion_item, parent, false);
            vh.textView = (TextView) convertView.findViewById(R.id.exclusion_item_text01);
            vh.imageView = (ImageView) convertView.findViewById(R.id.exclusion_item_icon);
            vh.button = (Button) convertView.findViewById(R.id.exclusion_item_button);
            vh.button = (Button) convertView.findViewById(R.id.exclusion_item_button);


            convertView.setTag(vh);
        } else {
            vh = (ViewHolder) convertView.getTag();
        }
        vh.button.setOnClickListener(new View.OnClickListener(){
            @Override
            public void onClick(View v) {

                Button btn = (Button) v;
                ListData id = (ListData) btn.getTag();
                String pkn = id.info.mAppPackge;
                BatteryCommon.pkgAdd(v.getContext(), pkn);
                btn.setClickable(false);

                data.remove(mAdapter.getItem(position));
                mAdapter.notifyDataSetChanged();
            }
        });
        vh.textView.setText(mData.get(position).info.mAppName);
        vh.imageView.setImageDrawable(mData.get(position).info.mIcon);
        vh.button.setTag(mData.get(position));
        return convertView;
    }

제가 원하는기능은 리스트뷰에 달려있는 버튼을 누르면 리스트가 옆으로 제거되는 애니메이션인데.

 

우선 코드부분입니다 저기 보시면 final ViewHolder vh; 밑에

 

animation = AnimationUtils.loadAnimatior(Exclusion_add_list.this, android.R.anim.slide_out_right);

convertWive.startAnimation(animation);

이 부분이 있는데 이걸 저기다 집어넣자니 애니메이션이 동작을 안하고

아래

vh.button.setOnClickListener(new View.OnClickListener(){

이 안에 집어넣으니 리스트는 가만히 있고 버튼만 이동하는 이상한 현상에 헤매고 있습니다. 혹시 저걸 어디다 집어넣어야 하는지 아시는분 있으면 알려주시길 바라며.. 적어봅니다.

리스트뷰 님이 2015년 3월 23일 질문

1개의 답변

0 추천
convertview는 님 자체 custom listview 전체 뷰일텐데,

음 리스트에 onclick에서

v.startanimation으로 해보세요.
Djleeee (13,180 포인트) 님이 2015년 3월 24일 답변
...