بروز خطا
[message]
اشتراک در سوال
رای ها
[dataList]
مشكل با انيميشن در رديفهاي يك ListView
سلام به همگي
من يه ليست ويئو دارم، و در قسمت getView تعريف كردم به كه row ها انيميشن بده.
مشكل اينجاس كه به تعدد سطر هايي كه داريم انيميشن تكرار ميشه، مثلا 10تا سطر داريم. 10 با اين انيميشن واسه رديف ها تكرار ميشه!
كسي راه حلي داره؟ يا ميدونه چيكار باس كرد؟ كد اينه:
@Override
public View getView(int position, View convertView, ViewGroup parent) {
LayoutInflater in=getLayoutInflater();
View row=in.inflate(R.layout.row_layout, parent, false);
Animation animation =AnimationUtils.loadAnimation(getContext(),(position > lastPosition)? R.anim.up_from_bottom : R.anim.down_from_top);row.startAnimation(animation); lastPosition = position;
return (row);
}
0
0
دوستان همراهي كنيد لطفا (11 سال پیش)
0
0
اگر قصد دارید انیمیشن بر روی هر آیتم اجرا بشه باید کد مربوط به اجرای انیمیشن رو ببرید داخل ادپتر و در متد getView استفاده کنید . (10 سال پیش)
0
0
private int lastPositi رو تغییر ندادی یه وقت؟ (10 سال پیش)
برای این سوال 3 پاسخ وجود دارد.
پاسخ به سوال
cormen2
11 سال پیش
+1
0
از این استفاده کنید :
@Override
publicView getView(int position,View convertView,ViewGroup parent){ViewHolder holder;
View v = convertView;
if(v ==null){
LayoutInflater vi =(LayoutInflater)currentActivity.getSystemService(Context.LAYOUT_INFLATER_SERVICE); v = vi.inflate(R.layout.your_layout,null);
}
RssParser.News news = getItem(position);
if(convertView ==null){ convertView = G.inflater.inflate(R.layout.your_layout, parent,false);
holder =newViewHolder(convertView); convertView.setTag(holder);}else{ holder =(ViewHolder) convertView.getTag();} animation =AnimationUtils.loadAnimation(G.currentActivity, R.anim.slide_down); v.startAnimation(animation); holder.fill(this, news, position);return convertView;}
پاسخ به سوال
prg-elipse
11 سال پیش
+4
0
دوست عزیز به احتمال زیاد این جواب بده واسه خودم جواب داده
------------------------------------------------ لینک دانلود پروژه ------------------------------------------------
@Override public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder; Structure item = getItem(position); if (convertView == null) { convertView = G.inflater.inflate(R.layout.adapter_note, parent,false); holder = new ViewHolder(convertView); convertView.setTag(holder); } else holder = (ViewHolder) convertView.getTag(); Animation slideIN = AnimationUtils.loadAnimation(G.context,R.anim.animateinsert); holder.filler(this, item, position); convertView.startAnimation(slideIN); return convertView; }
پاسخ به سوال
Criss
11 سال پیش
+3
0
این چیزی هست که خود استاد آموزشش رو دادند < و بخوبی هم کار میکنه
Animation animation = AnimationUtils.loadAnimation(this, R.anim.slide_right);
lstMainListViewContent.setLayoutAnimation(new LayoutAnimationController(animation));
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .