بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]
پرسش و پاسخ

ایجاد انیمیشن هنگام اسکرول کردن لیست ویو (حل شد)

مدیریت گفتگو
learnpro 12 سال پیش
آخرین تغییر: 12 سال پیش

سلام

تویه فصل 21 آموزش ها که استاد ایجاد افکت روی عناصر لیست ویو  رو آموزش دادند انیمیشن فقط برای بار اول ایجاد میشه و موقعی که اسکرول میشه انمیشنی در کار نیست.

حالا من میخام لیست ویوم مثل این افکت داشته باشه مو قع اسکرول چیکار باید بکنم ؟

 

نظرات

پاسخ‌ها 4

Denabit 12 سال پیش

سلام

دوست عزیز من توی یکی از پروژه هام این کارو کردم

  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 انیمیشن رو فراخونی کردم.

حالا یه سوال:دی

اگه بخوایم فقط موقعه ای که به پایین  اسکرول می کنیم  انیمیشن داشته باشیم چی؟

نظرات

learnpro 12 سال پیش
آره اگه فقط بشه به سمت پایین اسکرول بشه خیلی خوب میشه. یه چیز دیگه ! این انیمیشنی که عکسش رو چه جوری درست کنم ؟
learnpro 12 سال پیش
دوستان کسی نظری نداره ؟
learnpro 12 سال پیش

استاد فک کنم دست خودتون رو میبوسه.

نظرات

mohsen-jj 12 سال پیش

داخل کلاس 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;
	}

نظرات

learnpro 12 سال پیش
اینطوری اگه اسکرول به سمت بالا هم بره انیمیشن ایجاد میشه. چیکار کنم که فقط وقتی اسکرول به سمت پایین میشه انیمیشن داشته باشم. ؟
mohsen-jj 12 سال پیش
اینجوریش نمیدونم . اصلا همچین چیزی دیدین تا حالا ؟ داخل getView که فکر کنم هر آیتمی پیدا بشه چه از بالا چه از پایین انیمیشن براش ایجاد میشه . منظورم اینه که اگه همچین چیزی امکان پذیر باشه بعید میدونم داخل این متود باشه .... نمیدونم
Spirit 12 سال پیش
کاری نداره با یه if else و یه متغیر خارج از محدوده متد و متغیر position خود متد getView میشه تشخیص دادکه حرکت به سمت بالاست یا پایین ، کاری نداره کمی تمرکز کنید روش میتونید انجام بدید.
learnpro 12 سال پیش
داداش تمرکز کردن ولی نشد اگه میشه بیشتر راهنمایی کنید
Spirit 12 سال پیش

تشخیص سمت 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;
}
}

نظرات

learnpro 12 سال پیش
ممنون حل شد .

پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .