Android : How can I add an animation to my custom view object with onClickListener?

on Friday, December 12, 2014


I have a custom view fcard which defined with xml. fcards will be listed in my activity. I want to set an onClickListener to imageView which defined in fcard's. I have already write my adapter extended from ArrayAdapter. The adapter's getView method given below. If convertView defines as a final object, it cannot be inflated. other way should be define as final for use in imageView's onClickListener and startingAnimation. how can I accomplish this problem? I am new on android ,thanks



@Override
public View getView(int position, View convertView, ViewGroup parent) {
LayoutInflater inflater = ((Activity) cfcard).getLayoutInflater();
ViewHolder holder;
if (convertView == null) {
holder = new ViewHolder();
convertView = inflater.inflate(R.layout.view_facility_card, null,
false);
holder.tvSender = (TextView) convertView
.findViewById(R.id.fcardTvSender);
holder.tvDate = (TextView) convertView
.findViewById(R.id.fcardTvDate);
holder.tvPostTitle = (TextView) convertView
.findViewById(R.id.fcardTvPostTitle);
holder.tvPostDetail = (TextView) convertView
.findViewById(R.id.fcardTvPostDetail);
holder.ivFcardBtn = (ImageView) convertView
.findViewById(R.id.fcardButton);
convertView.setTag(holder);
} else {
holder = (ViewHolder) convertView.getTag();
}
holder.tvSender.setText(fcards.get(position).getTvSenderStr());
holder.tvSender.setText("sender");
holder.tvDate.setText("date");
holder.tvPostTitle.setText(fcards.get(position).getTvPostTitleStr());
holder.tvPostDetail.setText("detail");

final Animation anim;
holder.ivFcardBtn.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View v) {
anim = AnimationUtils.loadAnimation(getContext(),
android.R.anim.slide_out_right);
}
});
convertView.startAnimation(anim);
return convertView;

}

0 comments:

Post a Comment