What can I do when an Android method is depreciated?
本问题已经有最佳答案,请猛点这里访问。
我正在使用kotlin中的方法
1 2 3 4 5 6 | override fun setUserVisibleHint (isVisibleToUser: Boolean) { super.setUserVisibleHint (isVisibleToUser) if (isVisibleToUser && isResumed) { getTask () } } |
但它告诉我它已贬值,在Java中已贬值。
此行 setUserVisibleHint strike>
如何解决或替换该警告?
在此处输入图片说明
按照Fragment发行说明:
- You can now set a max Lifecycle state for a Fragment by calling
setMaxLifecycle() on a FragmentTransaction. This replaces the now deprecatedsetUserVisibleHint() .FragmentPagerAdapter andFragmentStatePagerAdapter have a new constructor that allows you to switch to the new behavior. (b/129780800)
在
已弃用的
仅在当前Fragment上调用
因此,如果您切换到新的
1 2 3 4 | override fun onResume() { super.onResume() getTask() } |
如果继续对适配器使用不建议使用的构造函数,则需要继续使用
因此,如果您使用的是查看寻呼机,则可以执行此操作
1 2 3 4 5 6 7 8 9 10 11 12 13 | viewPager?.addOnPageChangeListener(object : ViewPager.OnPageChangeListener { override fun onPageScrollStateChanged(state: Int) { } override fun onPageScrolled(position: Int, positionOffset: Float, positionOffsetPixels: Int) { } override fun onPageSelected(position: Int) { } }) |