- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我有一个包含 ViewPager 的 Activity,此 ViewPager 中的第一个 Fragment 包含 ListView,当我单击任何 Item 时,它会用选定的一个替换此 Fragment,我使用 setCurrentItem(selectedItem,true)//平滑滚动
但是 ViewPager 在选定 fragment 之前滑过所有 fragment 我希望它只滑到选定的 fragment 而不是所有 fragment 我试着像那样使用 PageTransfrom.transformPage
@Override
public void transformPage(View page, float position) {
int currentItem = viewPager.getCurrentItem();
if (currentItem != selectedItem)
page.setVisibility(View.GONE);
}
但没有运气
最佳答案
一个可能的解决方案是修改 PagerAdapter 以始终在项目 #2 上返回您想要的页面。
当点击第一页的任何项目时,首先更改 PagerAdapter 的方法 getItem(int position)
的实现,(如果您的 PagerAdapter 在同一个类文件中实现,这很容易您的代码),以在 position == 2
时返回您想要的页面,然后调用 setCurrentItem(2, true)
。这可以直接平滑滚动到所选页面。您可能还需要更改 getCount()
以将计数限制为仅 2,否则下一页可能不是预期的页面。
但此方法会关闭其他页面。用户只能滚动回第一页,然后导航到另一页。如果您想通过手动滚动(而不是通过点击)保持页面的自然顺序,您可以在 scoll(通过点击)停止后将 getItem(int position)
恢复为默认实现,并重新加载通过调用 setCurrentItem(position, false)
将当前页面停止到自然顺序(立即,这次不顺利),然后用户可以手动来回滚动。
关于android - ViewPager setCurrentItem 幻灯片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30015750/
我有一个包含一个 ViewPager(没有别的)的 Activity 。我使用的 fragment 非常简单。它们由带有两个按钮(后退和前进)的平面背景组成。 当 ViewPager 随用户输入滚动时
我像这样创建一个自定义 View 寻呼机: public class TaskPagerAdapter extends FragmentStatePagerAdapter { public TaskP
setCurrentItem() 函数不适用于以下 android(java) 代码如何使其工作? Intent i = getIntent(); int position = i.g
我有一个包含 ViewPager 的 Activity,此 ViewPager 中的第一个 Fragment 包含 ListView,当我单击任何 Item 时,它会用选定的一个替换此 Fragmen
我正在尝试为本地 Activity 制作一个应用程序,以允许裁判快速判断表现。现在,我正在使用一个 View 寻呼机,如果不在页面中输入必要的结果,它们将不允许他们前进页面。我还让页面在他们输入结果后
当我在 ViewPager 上执行滑动操作时,页面会滑动,但如果我从选项卡执行 viewPager.setCurrentItem(pageNum),它会重置页面但不会滑动。如何以编程方式使页面滑动?
在 PyQt 中,我可以使用 QListWidget.setCurrentItem(item) 让 QListWidget 以编程方式选择一个项目。当然,这会在我的 QListWidget 中为我选择
我遇到了一个奇怪的问题,并且在过去的三个小时内无法解决这个问题。所以我需要帮助。我正在创建一个类似于 Play Music 中的 PlayerUI。该 Activity 有一个 ViewPager 并
我正在使用这段代码来创建 InfiniteViewPager: pAdapter = new InfinitePagerAdapter(new MyPagerAdapter()); Infinitiv
我使用 PagerAdapter。我有很多元素,所以我不会同时加载所有元素。我重新加载适配器,用新元素更改旧元素。例如,我有 4 个元素,当我到达最后一个元素时,我重新加载这些元素并调用 setCur
该应用程序使用 android viewpager2 (androidx.viewpager2:viewpager2:1.0.0-beta04) 来显示幻灯片。每张幻灯片的上半部分都有视频,下半部分有
这个问题已经有答案了: What is a NullPointerException, and how do I fix it? (12 个回答) 已关闭 4 年前。 错误: java.lang.Nu
我正在使用 qReader 库,根据我的日志,该库按预期工作,与大错误日志相反,除非尝试在 MainFragment 中使用 viewPager.setCurrentItem(0) 更改 fragme
在我的 MainActivity 的 Oncreate 中,我添加了这段代码: mDateAreaSlider.addOnPageChangeListener(new ViewPager.OnPage
这是我的 tabLayoutCode mTabLayoutBerita.addOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {
对于我的项目,我使用可滑动的选项卡在列表之间导航。当删除其中一个列表时,我希望有一个流畅的动画并尝试通过使用 viewpager.setCurrentItem(page, true); 来存档它,以便
我想通过 viewpager 选项卡 fragment 更改在按钮单击中传递一些值。我有两个问题。 传递数据的最佳方式是什么? 如果我使用静态数据会有什么问题?比如: public static st
我的 ViewPager 附加的 TabLayout 有问题。重现步骤: 从第一个选项卡开始。 选择第二个标签。 按下后退按钮——我的代码看到用户在第二个选项卡上,并调用 viewPager.setC
我正在使用来自 Android 支持 v13 的 ViewPager,我想使用 setCurrentItem(int) 滚动到特定项目,但是当我尝试滚动超过 2 个页面时,应用程序卡住,几秒钟后,系统
我正在使用 viewpager 和标签布局 viewPager.setAdapter(Adapter); tablayout.setupWithViewPager(viewPager)
我是一名优秀的程序员,十分优秀!