আইওএস-এ, ইউআইটিএবলভি সারিগুলি সংযোজন এবং অপসারণের জন্য খুব সহজ এবং শক্তিশালী সুবিধা রয়েছে, এখানে ইউটিউব ভিডিওর একটি ক্লিপ ডিফল্ট অ্যানিমেশন দেখায়। চারপাশের সারিগুলি কীভাবে মুছে ফেলা সারিটিতে পড়েছে তা দ্রষ্টব্য। এই অ্যানিমেশনটি ব্যবহারকারীদের তালিকায় কী পরিবর্তিত হয়েছে এবং ডেটা পরিবর্তনের সময় তালিকায় তারা কোথায় ছিলেন সেদিকে নজর রাখতে সহায়তা করে।
যেহেতু আমি অ্যান্ড্রয়েডে বিকাশ করছি আমি একটি টেবিলভিউতে স্বতন্ত্র সারিগুলি অ্যানিমেটেড করার মতো কোনও সমতুল্য সুবিধা খুঁজে পাইনি । notifyDataSetChanged()
আমার অ্যাডাপ্টারে কল করার কারণে তালিকার ভিউটি তত্ক্ষণাত নতুন তথ্য সহ আপডেট করে। আমি ডেটা পরিবর্তনের সময় একটি নতুন সারিটির ভিতরে স্লাইড করা বা স্লাইডের একটি সাধারণ অ্যানিমেশন দেখাতে চাই, তবে এটি করার কোনও নথিভুক্ত উপায় খুঁজে পাচ্ছি না। দেখে মনে হচ্ছে লেআউটএনিমেশনকন্ট্রোলার এটি কাজ করার জন্য একটি কী ধরে রাখতে পারে তবে আমি যখন আমার তালিকাভিউতে একটি লেআউটএনিমেশন কনট্রোলার সেট করি ( এপিডেমোর লেআউটএনিমেশন 2 এর অনুরূপ ) এবং তালিকাটি প্রদর্শিত হওয়ার পরে আমার অ্যাডাপ্টার থেকে উপাদানগুলি সরিয়ে ফেলা হয়, উপাদানগুলি অ্যানিমেটেড হওয়ার পরিবর্তে অবিলম্বে অদৃশ্য হয়ে যায় the ।
আমি যখন পৃথক আইটেমটি সরিয়ে ফেলা হয় তখন প্রাণবন্ত করতে নীচের মতো জিনিসগুলি চেষ্টা করেছি:
@Override
protected void onListItemClick(ListView l, View v, final int position, long id) {
Animation animation = new ScaleAnimation(1, 1, 1, 0);
animation.setDuration(100);
getListView().getChildAt(position).startAnimation(animation);
l.postDelayed(new Runnable() {
public void run() {
mStringList.remove(position);
mAdapter.notifyDataSetChanged();
}
}, 100);
}
যাইহোক, অ্যানিমেটেড সারিটির চারপাশে থাকা সারিগুলি যখন notifyDataSetChanged()
ডাকা হবে তখন তারা তাদের নতুন অবস্থানে না যাওয়া অবধি অবস্থানটি সরবে না । এটি প্রদর্শিত হয় একবার তালিকার ভিউ এর উপাদানগুলি রাখার পরে তার বিন্যাস আপডেট করে না।
আমার নিজের প্রয়োগ / লিস্টভিউয়ের কাঁটাচামচ লেখার সময় আমার মন কেটে গেছে, এটি এমন কিছু মনে হচ্ছে যা এতটা কঠিন নয়।
ধন্যবাদ!