ViewPager2
সর্বশেষ আপডেট | স্থিতিশীল রিলিজ | মুক্তির প্রার্থী | বিটা রিলিজ | আলফা রিলিজ |
---|---|---|---|---|
14 মে, 2024 | 1.1.0 | - | - | - |
অ্যান্ড্রয়েডএক্স নির্ভরতা
ViewPager2
ব্যবহার করতে, আপনার প্রকল্পের build.gradle
ফাইলে নিম্নলিখিত AndroidX নির্ভরতা যোগ করুন:
গ্রোভি
dependencies { implementation "androidx.viewpager2:viewpager2:1.1.0" }
কোটলিন
dependencies { implementation("androidx.viewpager2:viewpager2:1.1.0") }
প্রতিক্রিয়া
আপনার প্রতিক্রিয়া জেটপ্যাককে আরও ভাল করতে সাহায্য করে। আপনি যদি নতুন সমস্যা আবিষ্কার করেন বা এই লাইব্রেরির উন্নতির জন্য ধারনা পান তাহলে আমাদের জানান। আপনি একটি নতুন তৈরি করার আগে অনুগ্রহ করে এই লাইব্রেরিতে বিদ্যমান সমস্যাগুলি দেখুন৷ আপনি তারকা বোতামে ক্লিক করে একটি বিদ্যমান সমস্যায় আপনার ভোট যোগ করতে পারেন।
আরও তথ্যের জন্য ইস্যু ট্র্যাকার ডকুমেন্টেশন দেখুন।
সংস্করণ 1.1.0
সংস্করণ 1.1.0
14 মে, 2024
androidx.viewpager2:viewpager2:1.1.0
প্রকাশিত হয়েছে। সংস্করণ 1.1.0 এ এই কমিটগুলি রয়েছে।
1.0.0 থেকে গুরুত্বপূর্ণ পরিবর্তন
- RecyclerView
1.3.1-rc01
বা উচ্চতর ব্যবহার করার সময় ক্র্যাশগুলি ঠিক করে। -
ViewPager2
এখন সঠিকভাবেCollectionInfo
এবংCollectionItemInfo
কে পপুলেট করে যা RecyclerView1.2.0-alpha02
এবং উচ্চতর ডিফল্টরূপে আর পপুলেট করে না। -
FragmentTransactionCallback
ইন্টারফেস ফ্র্যাগমেন্ট লাইফসাইকেল পরিবর্তনগুলি শোনার জন্য যুক্ত করা হয়েছে যাFragmentStateAdapter
মধ্যে ঘটে৷ -
FragmentManager
একটি ফ্র্যাগমেন্ট যোগ করার সময় প্রাথমিক ফ্র্যাগমেন্ট মেনু দৃশ্যমানতার সাথেFragmentStateAdapter
সমস্যা স্থির করা হয়েছে। - উইন্ডো ইনসেটগুলির স্থির প্রেরণ: সমস্ত পৃষ্ঠাগুলি এখন একই ইনসেটগুলি পায়৷ পুরানো API সংস্করণে (< API 30)
WindowInsets
কীভাবে প্রেরণ করা হয় যা ইনসেটগুলিকে ভাইবোন ভিউতে উপলব্ধ হওয়া থেকে আটকাতে পারে, আপনি যদি < API 30 ডিভাইসে ইনসেটগুলি প্রয়োগ করতে চান তবে আপনাকেWindowInsetsApplier.install(viewPager2)
এর মাধ্যমে এই সমাধানটি বেছে নিতে হবে .
সংস্করণ 1.1.0-rc01
1 মে, 2024
androidx.viewpager2:viewpager2:1.1.0-rc01
1.1.0-beta02 থেকে কোনো উল্লেখযোগ্য পরিবর্তন ছাড়াই মুক্তি পেয়েছে। সংস্করণ 1.1.0-rc01-এ এই কমিট রয়েছে।
সংস্করণ 1.1.0-beta02
24 মে, 2023
androidx.viewpager2:viewpager2:1.1.0-beta02
প্রকাশিত হয়েছে। 1.1.0-beta02 সংস্করণে এই কমিট রয়েছে।
এপিআই পরিবর্তন
-
FragmentTransactionCallback
এ ফ্র্যাগমেন্ট স্টেট সেভিং কলব্যাক যোগ করা হয়েছে। ( I45b90 ) -
ViewPager2
এখন আর পুরনো API সংস্করণের (<30) ভাঙাWindowInsets
ডিসপ্যাচ ঠিক করার চেষ্টা করে না, কারণ ফিক্স নিজেইViewPager2
এর ভাইবোনদের জন্য ক্ষতিকর হতে পারে। সমাধানটি এখনও উপলব্ধ, তবে এটি একটি অপ্ট-ইন হয়ে গেছে যাতে বিকাশকারীরা কেসের ভিত্তিতে মামলার বিষয়ে সিদ্ধান্ত নিতে পারে।WindowInsetsApplier.install(viewPager2))
কল করে সমাধানটি সক্ষম করুন৷ ( IC9a85 )
বাগ ফিক্স
-
RecyclerView
এর নতুন সংস্করণগুলির সাথে সামঞ্জস্যের সমস্যাগুলি সমাধান করুন৷ViewPager2
এর এই সংস্করণের ব্যবহারকারীদের অন্ততRecyclerView
1.3.1-rc01-এ আপডেট করা উচিত।
সংস্করণ 1.1.0-beta01
4 আগস্ট, 2021
androidx.viewpager2:viewpager2:1.1.0-beta01
প্রকাশিত হয়েছে। সংস্করণ 1.1.0-beta01-এ এই কমিট রয়েছে।
এপিআই পরিবর্তন
Kotlin 1.4 ব্যবহার করতে androidx আপগ্রেড করুন ( Id6471 , b/165307851 , b/165300826 )
সমস্ত অ্যান্ড্রয়েডক্স লাইব্রেরির জন্য জাভা 8 টার্গেটিং এ যান ( 2923f39 )
বাগ ফিক্স
- উইন্ডো ইনসেটগুলির স্থির প্রেরণ, সমস্ত পৃষ্ঠাগুলি এখন একই ইনসেটগুলি পায়৷ ( I47fef )
সংস্করণ 1.1.0-alpha01
এপ্রিল 1, 2020
androidx.viewpager2:viewpager2:1.1.0-alpha01
প্রকাশিত হয়েছে। সংস্করণ 1.1.0-alpha01-এ এই কমিট রয়েছে।
এই রিলিজটি RecyclerView 1.2.0-alpha02- এ পরিবর্তনের সাথে CollectionInfo
এবং CollectionItemInfo
তৈরি করে যা RecyclerView
আর ডিফল্টরূপে প্রদান করে না। RecyclerView 1.2.0-alpha02
এ আপডেট করার সময় অ্যাক্সেসিবিলিটি রিগ্রেশন প্রতিরোধ করার জন্য ViewPager2
ও আপডেট করুন।
নতুন বৈশিষ্ট
-
FragmentTransactionCallback
ইন্টারফেস ফ্র্যাগমেন্ট লাইফসাইকেল পরিবর্তনগুলি শোনার জন্য যুক্ত করা হয়েছে যাFragmentStateAdapter
মধ্যে ঘটে৷ ( Ibda77 )
বাগ ফিক্স
-
FragmentManager
একটি ফ্র্যাগমেন্ট যোগ করার সময় প্রাথমিক ফ্র্যাগমেন্ট মেনু দৃশ্যমানতার সাথেFragmentStateAdapter
সমস্যা স্থির করা হয়েছে। ( I9d2ff , b/144442240 )
সংস্করণ 1.0.0
সংস্করণ 1.0.0
নভেম্বর 20, 2019
androidx.viewpager2:viewpager2:1.0.0
1.0.0-rc01 থেকে কোনো পরিবর্তন ছাড়াই প্রকাশিত হয়েছে। সংস্করণ 1.0.0 এ এই কমিটগুলি রয়েছে ।
1.0.0 এর প্রধান বৈশিষ্ট্য
- পূর্ববর্তী ভিউপেজার বাস্তবায়ন থেকে উন্নতি:
- RTL (ডান-থেকে-বামে) লেআউট সমর্থন
- উল্লম্ব অভিযোজন সমর্থন
- নির্ভরযোগ্য
Fragment
সমর্থন (অন্তর্নিহিতFragment
সংগ্রহে পরিবর্তনগুলি পরিচালনা সহ) - ডেটাসেট পরিবর্তন অ্যানিমেশন (
DiffUtil
সমর্থন সহ)
- পূর্ববর্তী
ViewPager
বাস্তবায়ন থেকে সহজ স্থানান্তর (এপিআই সমতা যেখানে সম্ভব)। মাইগ্রেশন গাইড এবং নমুনা অ্যাপ দেখুন।
খণ্ডের মধ্যে স্লাইড করতে ViewPager2 ব্যবহার করার নির্দেশিকা দেখুন।
সংস্করণ 1.0.0-rc01
23 অক্টোবর, 2019
androidx.viewpager2:viewpager2:1.0.0-rc01
1.0.0-beta05
থেকে কোনো পরিবর্তন ছাড়াই মুক্তি পেয়েছে। সংস্করণ 1.0.0-rc01-এ এই কমিট রয়েছে ।
সংস্করণ 1.0.0-beta05
9 অক্টোবর, 2019
androidx.viewpager2:viewpager2:1.0.0-beta05
প্রকাশিত হয়েছে। সংস্করণ 1.0.0-beta05-এ এই কমিট রয়েছে ।
বাগ ফিক্স
-
requestFocus
জন্য ঠিক করুন একটি অফ-স্ক্রিন পৃষ্ঠায় ফোকাস করুন যার ফলে একটি পৃষ্ঠা পরিবর্তন হয়। আচরণটি এখন মূল ভিউপেজারের সাথে সামঞ্জস্যপূর্ণ। ( b/140656866 ) - একটি পৃষ্ঠা পরিবর্তনের পরে একটি অফ-স্ক্রীন পৃষ্ঠায়
focus
অবশিষ্ট থাকার জন্য ঠিক করুন। পৃষ্ঠা পরিবর্তন করার সময় ফোকাস এখন সাফ করা হয়। ( b/140656866 ) - পৃষ্ঠা পরিবর্তন করার সময়
Fragment
পজ/রিজুমে লেনদেনের অর্ডার করার জন্য ঠিক করুন (আমরা এখন নতুনটি পুনরায় শুরু করার আগে পুরানো প্রাথমিক আইটেমকে সর্বদা বিরতি দিই)। ( b/139489059 ) -
canScrollHorizontally(int)
এবংcanScrollVertically(int)
এর জন্য ঠিক করুন - ViewPager2 প্রদত্ত দিক দিয়ে স্ক্রোল করতে পারে কিনা সেগুলি এখন ফেরত দেয়। ( b/141848404 ) - SwipeRefreshLayout- এ একটি সমস্যা ViewPager2 এর সাথে আরও ভালোভাবে কাজ করার জন্য ঠিক করা হয়েছে।
সংস্করণ 1.0.0-beta04
5 সেপ্টেম্বর, 2019
androidx.viewpager2:viewpager2:1.0.0-beta04
প্রকাশিত হয়েছে। এই সংস্করণে অন্তর্ভুক্ত কমিটগুলি এখানে পাওয়া যাবে।
বাগ ফিক্স
-
Fragment
ব্যাক স্ট্যাকের সাথেFragmentStateAdapter
এজ-কেস সমস্যার সমাধান করুন। ( b/139095195 ) - টাইপিং/ফোকাসে একটি স্ক্রোল/পৃষ্ঠা লাফিয়ে কিছু অ্যাট্রিবিউট কনফিগারেশন সহ
EditText
এর জন্য ঠিক করুন। ( b/138044582 , b/139432498 ) -
ItemDecoration
দৃষ্টান্তগুলির সাথে একটি সমস্যার সমাধান করুন এবং ওভারস্ক্রোল নির্দেশক অবস্থানের জন্য একটি সমাধান করুন৷ ( b/139012032 ) -
ViewPager2
: RecyclerView , NestedScrollView এবং নেভিগেশন- এর সাথে আরও ভালভাবে কাজ করার জন্য অন্যান্য উপাদানগুলিতে বেশ কয়েকটি সমস্যা সমাধান করা হয়েছে।
সংস্করণ 1.0.0-beta03
7 আগস্ট, 2019
androidx.viewpager2:viewpager2:1.0.0-beta03
প্রকাশিত হয়েছে। এই সংস্করণে অন্তর্ভুক্ত কমিটগুলি এখানে পাওয়া যাবে।
বাগ ফিক্স
- ক্ষণস্থায়ী
Fragment
অবস্থার সাথেFragmentStateAdapter
সমস্যার সমাধান করুন। b/134246546 - একটি মসৃণ-স্ক্রোল করার সময় একটি ডেটা-সেট পরিবর্তিত হলে
currentItem
এবংscrollState
সমস্যার জন্য সমাধান করুন (এজ কেস অ্যাড্রেস করা হয়েছে)। b/137642608 -
PageTransformer
(MarginPageTransformer
সহ) ডেটা-সেট পরিবর্তন অ্যানিমেশনের সাথে বিরোধপূর্ণ অ্যানিমেশনের জন্য ঠিক করুন। b/134658996 - বড় ডেটাসেটে মসৃণ-স্ক্রোল অ্যানিমেশনের জন্য ঠিক করুন (
float
ইন্টিজার মান সীমা)। b/134858960
সংস্করণ 1.0.0-beta02
জুলাই 19, 2019
androidx.viewpager2:viewpager2:1.0.0-beta02
প্রকাশিত হয়েছে। এই সংস্করণে অন্তর্ভুক্ত কমিটগুলি এখানে পাওয়া যাবে।
বাগ ফিক্স
-
1.0.0-beta01
এ প্রবর্তিত অনিচ্ছাকৃত জ্যাকোকো নির্ভরতা সরানো হয়েছে। ( b/137782951 )
সংস্করণ 1.0.0-beta01
জুলাই 17, 2019
androidx.viewpager2:viewpager2:1.0.0-beta01
প্রকাশিত হয়েছে। এই সংস্করণে অন্তর্ভুক্ত কমিটগুলি এখানে পাওয়া যাবে।
বাগ ফিক্স
- স্ক্রোল করার সময় এবং ডেটা-সেট আপডেট করার সময়
ViewPager2.updateCurrentItem
ক্র্যাশের জন্য সমাধান করুন -
ViewPager2.isLayoutRtl
সম্পর্কিতNullPointerException
ক্র্যাশের জন্য সমাধান করুন -
TOUCH_SLOP_PAGING
এখন একটি ডিফল্ট টাচ স্লপ৷ -
OnPageChangeCallback
ইভেন্টগুলি খালি অ্যাডাপ্টারের জন্য স্থির করা হয়েছে (ViewPager1
এর সাথে সমতার জন্য-1
এর পরিবর্তে পৃষ্ঠা0
)
জ্ঞাত সমস্যা
- আমরা এখনও স্টেবলে যাওয়ার আগে বাকি খোলা সমস্যা নিয়ে কাজ করছি
সংস্করণ 1.0.0-alpha06
জুলাই 2, 2019
androidx.viewpager2:viewpager2:1.0.0-alpha06
প্রকাশিত হয়েছে। এই সংস্করণে অন্তর্ভুক্ত কমিটগুলি এখানে পাওয়া যাবে।
API হিমায়িত করার এবং বিটাতে যাওয়ার আগে এটি আমাদের শেষ পরিকল্পিত আলফা - অনুগ্রহ করে আমাদের API প্রতিক্রিয়া প্রদান করুন।
নতুন বৈশিষ্ট
- উন্নত অ্যাক্সেসযোগ্যতার ভিত্তি:
ACTION_PAGE_RIGHT
,ACTION_PAGE_DOWN
, ইত্যাদি৷
এপিআই পরিবর্তন
-
FragmentStateAdapter
: নন-প্রাথমিক-আইটেমFragment
STARTED
এ সীমাবদ্ধ করা হয়েছে এবং তাদেরmenuVisibility
মিথ্যাতে সেট করা হয়েছে৷ -
PageTransformer
,MarginPageTransformer
,CompositePageTransformer
: স্থিরposition
জন্য ডকুমেন্টেশন৷
বাগ ফিক্স
-
currentItem
ডেটা-সেট পরিবর্তন / অ্যাডাপ্টার পরিবর্তনের পরে সংশোধন করা হয়েছে। -
MarginPageTransformer
offscreenPageLimit
সমস্যা সমাধান করা হয়েছে। -
FakeDrag
আচরণে থাকাকালীন অ্যাক্সেসিবিলিটি অ্যাকশন ঠিক করা হয়েছে।
সংস্করণ 1.0.0-alpha05
জুন 5, 2019
androidx.viewpager2:viewpager2:1.0.0-alpha05
প্রকাশিত হয়েছে। এই সংস্করণে অন্তর্ভুক্ত কমিটগুলি এখানে পাওয়া যাবে।
নতুন বৈশিষ্ট
-
RecyclerView
এর সাথে সামঞ্জস্যপূর্ণ আচরণের সাথেItemDecorator
প্রবর্তিত হয়েছে। -
MarginPageTransformer
পৃষ্ঠাগুলির মধ্যে স্থান তৈরি করার ক্ষমতা প্রদানের জন্য চালু করা হয়েছে (পৃষ্ঠা ইনসেটের বাইরে)। -
CompositePageTransformer
একাধিকPageTransformer
s একত্রিত করার ক্ষমতা প্রদানের জন্য চালু করা হয়েছে।
এপিআই পরিবর্তন
-
FragmentStateAdapter#getItem
পদ্ধতির নাম পরিবর্তন করেFragmentStateAdapter#createFragment
হয়েছে - পূর্ববর্তী পদ্ধতির নাম অতীতে বাগগুলির উৎস হিসেবে প্রমাণিত হয়েছে। -
OFFSCREEN_PAGE_LIMIT_DEFAULT
মান0
থেকে-1
এ পরিবর্তিত হয়েছে।OFFSCREEN_PAGE_LIMIT_DEFAULT
ধ্রুবক ব্যবহৃত হলে ক্লায়েন্ট কোড পরিবর্তনের প্রয়োজন নেই।
বাগ ফিক্স
-
getCurrentItem()
আচরণ সংশোধন করা হয় যখনSCROLL_STATE_SETTLING
বিপরীত দিকে একটি টেনে বাধাপ্রাপ্ত হয়। -
FragmentStateAdapter
ক্লাস লোডার সমস্যা "ক্রিয়াকলাপগুলি রাখবেন না" প্রসঙ্গে সম্বোধন করা হয়েছে। -
setOffscreenPageLimit
ডকুমেন্টেশন উন্নত হয়েছে।
সংস্করণ 1.0.0-alpha04
7 মে, 2019
androidx.viewpager2:viewpager2:1.0.0-alpha04
প্রকাশিত হয়েছে। এই সংস্করণে অন্তর্ভুক্ত প্রতিশ্রুতি এখানে পাওয়া যাবে।
নতুন বৈশিষ্ট
-
offscreenPageLimit
: ভিউ হায়ারার্কিতে রাখা পৃষ্ঠাView
s /Fragment
সংখ্যার একটি শক্ত নিয়ন্ত্রণের অনুমতি দেয়
এপিআই পরিবর্তন
-
orientation
এবংisUserScrollable
বৈশিষ্ট্যগুলি আরSavedState
এর অংশ নয় -
FragmentStateAdapter
এsaveState
এবংrestoreState
পদ্ধতি চূড়ান্ত করা হয়েছে -
ViewPager2.Orientation
এবংViewPager2.ScrollState
টীকাগুলি অ-সর্বজনীন করা হয়েছে
বাগ ফিক্স
-
SavedState
: যখনActivity
ধ্বংস/পুনঃনির্মিত হয় তখন পুনরুদ্ধারের সাথে একটি সমস্যা সমাধান করা হয়েছে -
SavedState
: অ্যাডাপ্টার সেট না হওয়া পর্যন্ত পুনরুদ্ধার বিলম্বিত -
OnPageChangeCallback
: ক্ষুদ্র প্রান্তের ক্ষেত্রে সংশোধন করা হয়েছে
সংস্করণ 1.0.0-alpha03
3রা এপ্রিল, 2019
androidx.viewpager2:viewpager2:1.0.0-alpha03
প্রকাশিত হয়েছে। এই সংস্করণে অন্তর্ভুক্ত কমিটগুলি এখানে পাওয়া যাবে।
নতুন বৈশিষ্ট
- প্রোগ্রাম্যাটিকভাবে ViewPager2 স্ক্রোল করার ক্ষমতা:
fakeDragBy(offsetPx)
।
এপিআই পরিবর্তন
-
FragmentStateAdapter
এর জন্য এখন একটিLifecycle
অবজেক্ট প্রয়োজন। হোস্টFragmentActivity
বা হোস্টFragment
থেকে এটি পাওয়ার জন্য দুটি ইউটিলিটি কনস্ট্রাক্টর যোগ করা হয়েছে।
বাগ ফিক্স
- অসংখ্য
Fragment
সাপোর্ট ফিক্স:- ন্যূনতম অবস্থায় বা স্ক্রিন ঘূর্ণনের সময় ডেটাসেট আপডেটগুলি পরিচালনা করা;
- ঘূর্ণন পরে অপ্রাসঙ্গিক টুকরা অপসারণ;
- সরানো আইটেম সংরক্ষিত অবস্থা অপসারণ.
-
PageChangeCallback
: মার্জিন সহ পৃষ্ঠাগুলির জন্য নির্দিষ্ট পৃষ্ঠা অফসেট গণনা।
সংস্করণ 1.0.0-alpha02
13 মার্চ, 2019
androidx.viewpager2:viewpager2:1.0.0-alpha02
প্রকাশিত হয়েছে। এই সংস্করণে অন্তর্ভুক্ত প্রতিশ্রুতির সম্পূর্ণ তালিকা এখানে পাওয়া যাবে।
নতুন বৈশিষ্ট
- ব্যবহারকারীর ইনপুট নিষ্ক্রিয় করার ক্ষমতা (
setUserInputEnabled
,isUserInputEnabled
)
এপিআই পরিবর্তন
- ViewPager2 ক্লাস ফাইনাল
বাগ ফিক্স
-
FragmentStateAdapter
স্থায়িত্ব সংশোধন
সংস্করণ 1.0.0-alpha01
7 ফেব্রুয়ারি, 2019
androidx.viewpager2:viewpager2 1.0.0-alpha01
প্রকাশিত হয়েছে। এটি ViewPager2 এর প্রথম প্রকাশ।
নতুন বৈশিষ্ট
- এর পূর্বসূরি
android.support.v4.view.ViewPager
(VP1) এর সাথে তুলনা করে:- ডান-থেকে-বামে (RTL) লেআউট সমর্থন
- উল্লম্ব অভিযোজন সমর্থন
-
notifyDataSetChanged
সম্পূর্ণরূপে কার্যকরী (VP1 বাগ সম্বোধন করা হয়েছে)
এপিআই পরিবর্তন
-
FragmentStateAdapter
FragmentStatePagerAdapter
প্রতিস্থাপন করে -
RecyclerView.Adapter
PagerAdapter
প্রতিস্থাপন করে -
registerOnPageChangeCallback
addPageChangeListener
প্রতিস্থাপন করে
জ্ঞাত সমস্যা
- ক্লিপটোপ্যাডিং
- কোন fakeDrag নেই
- JavaDoc
- স্থিতিবিন্যাস সমান্তরাল নেস্টেড স্ক্রলিং
- অফস্ক্রিন সীমা নিয়ন্ত্রণ নেই
- আরও ভাল TabLayout ইন্টিগ্রেশন প্রয়োজন
- পৃষ্ঠা প্রস্থ সেটার নেই (জোর করা 100%/100%)
- পৃষ্ঠা ট্রান্সফরমার: কোন হার্ডওয়্যার/সফ্টওয়্যার স্তর পছন্দ নেই; কোন বিপরীত অঙ্কন আদেশ
- বর্তমানের আগে একটি পৃষ্ঠা সন্নিবেশ করার সময় বর্তমান আইটেম দৃশ্যমান রাখুন
- কীবোর্ড নেভিগেশন কাজ প্রয়োজন
-
FragmentStateAdapter
স্থায়িত্ব / কর্মক্ষমতা উন্নতি আসছে