প্রথমে একটু ব্যাকগ্রাউন্ড:
স্ক্রোলভিউয়ের ভিতরে আমার একটি বিন্যাস রয়েছে। প্রথমে, ব্যবহারকারী যখন স্ক্রিনে স্ক্রোল করে তখন স্ক্রোলভিউ স্ক্রোল। যাইহোক, নির্দিষ্ট পরিমাণ স্ক্রোলের পরে, আমি স্ক্রোল ভিউতে স্ক্রোলটি অক্ষম করেছিলাম "লেভেল ফোকাস" বাচ্চার বিন্যাসের ভিতরে একটি ওয়েবভিউতে সরানো। এইভাবে, স্ক্রোলভিউ লাঠি এবং সমস্ত স্ক্রোল ইভেন্টগুলি এর ভিতরে থাকা ওয়েবভিউতে যায়।
সুতরাং, কোনও সমাধানের জন্য, যখন স্ক্রোলের প্রান্ত পৌঁছে যায়, আমি স্ক্রোলভিউ থেকে শিশু বিন্যাসটি সরিয়ে স্ক্রোলভিউয়ের পিতামাতার মধ্যে রাখি put (এবং স্ক্রোলভিউটি অদৃশ্য করে তুলি)।
// Remove the child view from the scroll view
scrollView.removeView(scrollChildLayout);
// Get scroll view out of the way
scrollView.setVisibility(View.GONE);
// Put the child view into scrollview's parent view
parentLayout.addView(scrollChildLayout);
সাধারণ ধারণা: (-> মানে রয়েছে)
পূর্বে: প্যারেন্টলেআউট -> স্ক্রোলভিউ -> স্ক্রোলচিল্ড লেআউট
এর পরে: প্যারেন্টলয়আউট -> স্ক্রোলচিল্ড লেআউট
উপরের কোডটি আমাকে এই ব্যতিক্রম দিচ্ছে:
java.lang.IllegalStateException: The specified child already has a parent. You must call removeView() on the child's parent first.
at android.view.ViewGroup.addViewInner(ViewGroup.java:1976)
at android.view.ViewGroup.addView(ViewGroup.java:1871)
at android.view.ViewGroup.addView(ViewGroup.java:1828)
at android.view.ViewGroup.addView(ViewGroup.java:1808)
আপনি কি জানেন কি হচ্ছে? আমি পরিষ্কারভাবে পিতামাতাকে অপসারণ কল করছি।