بروز خطا
[message]
اشتراک در سوال
رای ها
[dataList]
ایجاد انیمیشن هنگام اسکرول کردن لیست ویو (حل شد)
سلام
تویه فصل 21 آموزش ها که استاد ایجاد افکت روی عناصر لیست ویو رو آموزش دادند انیمیشن فقط برای بار اول ایجاد میشه و موقعی که اسکرول میشه انمیشنی در کار نیست.
حالا من میخام لیست ویوم مثل این افکت داشته باشه مو قع اسکرول چیکار باید بکنم ؟

برای این سوال 4 پاسخ وجود دارد.
پاسخ به سوال
Denabit
12 سال پیش
+2
0
سلام
دوست عزیز من توی یکی از پروژه هام این کارو کردم
public void fill(final ArrayAdapter<StructNote> adapter, final StructNote item, final int position)
{
Animation animati R.anim.translateup);
layoutRoot.setLayoutAnimation(new LayoutAnimationController(animation));
txttitle.setText(item.title);
layoutRoot.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
Intent intent = new Intent(G.currentActivity, ActivityShow.class);
G.currentActivity.startActivity(intent);
}
});
}
توی کلاس AdapterNote متد fill انیمیشن رو فراخونی کردم.
حالا یه سوال:دی
اگه بخوایم فقط موقعه ای که به پایین اسکرول می کنیم انیمیشن داشته باشیم چی؟
پاسخ به سوال
mohsen-jj
12 سال پیش
+7
0
داخل کلاس adapterNote که استاد نوشتن ، بعد داخل متود getView پایین اون if . else ها انیمیشنت رو تعریف کن بعد کافیه بنویسی :
convertView.startAnimation(animation)
مثلا این مال من هست :
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder;
StructNote item = getItem(position);
if (convertView == null) {
convertView = G.inflater.inflate(R.layout.adapter_list, parent,
false);
holder = new ViewHolder(convertView);
convertView.setTag(holder);
} else {
holder = (ViewHolder) convertView.getTag();
}
holder.fill(this, item, position);
Animation animation = AnimationUtils.loadAnimation(G.currentActivity,
android.R.anim.slide_in_left);
convertView.startAnimation(animation);
return convertView;
}
پاسخ به سوال
Spirit
12 سال پیش
+13
0
تشخیص سمت Scroll شدن :
private int lastPos = 1;
public View getView(int position, View convertView, ViewGroup parent) {
.
.
.
if (lastPos < position) {
// scrolling down
lastPos = position;
} else {
// scrolling up
lastPos = position;
}
}
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .