问题标签 [android-viewpager]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - Android - 多个可查看项目的水平滚动
编辑:查看我自己的答案以获得简单的解决方案
重要提示:赏金提供了一种明确的方式来修改 ViewPager 以满足下面概述的场景。请不要提供 HorizontalScrollView - 我需要涵盖完整的 Fragment 生命周期场景
我需要实现Fragments
基于视图的水平滚动,其中一个项目位于中心,右侧/左侧的项目部分或完全可见。ViewPager
不适合该任务,因为它每次都专注于显示一个项目。
为了更容易理解,下面是一个快速草图,其中项目 1、5 和 6 位于可视区域之外。并且想要使这个可查看的数字可配置,例如在纵向视图中,我将只显示 2 个(或可能只显示一个)项目。
我不想在屏幕上显示 3 个项目,只要显示中心项目就可以裁剪其他项目。在小屏幕上可以有 1 个中心项目,并且随着屏幕尺寸的增大,应该显示多个(裁剪是可以的)项目
我知道这看起来像一个画廊,但这些项目也不是简单的图像,而是Fragments
每个片段中都有一个垂直滚动的列表
PS 发现@Commonsware 的这篇博文列出了 3 种不同的方法。为了我的需要,我喜欢#3
android - 在片段中显示片段查看器
我有一个包含 ViewPager 的片段。ViewPager 与包含一组片段的适配器相关联。
加载父片段后,我遇到了一条IllegalStateException
消息:java.lang.IllegalStateException: Recursive entry to executePendingTransactions
。
一些研究使我得出结论,系统无法在另一个片段中显示片段,但是似乎有一些迹象表明使用 ViewPager 完全可以做到这一点( ViewPager 中的一个错误将它与其他片段一起使用)。
事实上,如果我向我的父片段添加一个按钮,该按钮mPager.setAdapter(mAdapter)
在按下时调用我的 ViewPager,则 ViewPager 会成功加载。这并不理想。
那么问题必须与片段生命周期相关。因此,我的问题是:有没有其他人找到解决这个问题的方法,如果有,如何解决?
有没有办法将 ViewPager 上的适配器设置延迟到片段事务之后?
这是我的父片段代码:
和适配器:
android - 在列表视图行android中查看寻呼机
我可以创建一个 View Pager 并向其添加片段,使其表现得像在 Android 市场中一样。现在,我在其中一个页面中有一个列表视图。将视图寻呼机添加到列表视图行是否是个好主意。您认为它会影响主 View Pager,还是有其他更好的方法?谢谢。
android - 替换 ViewPager 中的 Fragment
我正在尝试将 Fragment 与ViewPager
使用FragmentPagerAdapter
. 我想要实现的是用另一个片段替换位于 的第一页上的片段ViewPager
。
寻呼机由两个页面组成。第一个是FirstPagerFragment
,第二个是SecondPagerFragment
。单击第一页的按钮。我想FirstPagerFragment
用 NextFragment 替换。
下面是我的代码。
...这里是 xml 文件
fragment_pager.xml
first.xml
现在的问题...我应该使用哪个 ID
?
如果我使用R.id.first_fragment_root_id
,则替换有效,但 Hierarchy Viewer 显示出奇怪的行为,如下所示。
一开始的情况是
更换后的情况是
如您所见,有问题,我希望在替换片段后找到与第一张图片相同的状态。
android - 上一页和下一页可见的Android ViewPager?
我目前正在建立一个水平的视频画廊。
我想做这样的事情,只有一个视频居中,上一个和下一个视频的一部分:
我首先选择了画廊,但它的局限性让我寻找别的东西。我想显示一个页面指示器,使用图库很难实现。
第二种选择是从 Android 兼容性库中选择ViewPager 。我找到了一种在其上实现页面指示器的方法。但是现在,如何部分显示左右页面?
android - 无法使用 viewpager 让 android 软键盘出现/隐藏
在我的应用程序中,我使用 viewPager 给我很好的滑动视图。我希望键盘隐藏在其中的两个页面中,但始终显示在一页上,我有一个文本框。
我尝试了各种方法来显示键盘,但它不起作用。我想我一定是在错误的地方调用了显示键盘代码。
任何帮助都会很棒,因为它让我发疯!
android - Android - problems using FragmentActivity + Loader to update FragmentStatePagerAdapter
I'm trying to use FragmentActivity
with ViewPager
to display dynamic list of Fragments
. There are plenty of examples on how to do a static version of it. My problem is that the list I display needs to be loaded dynamically and also can change based on user input (add/delete). I'm trying to use customized android.support.v4.content.Loader
to load set of data that I can use to build my list.
Everything goes fine in my setup until I get to the point when I want to update the adapter and issue FragmentStatePagerAdapter#notifyDataSetChanged()
call at which point this code is executed (from FragmentStatePagerAdapter
)
The transaction commit fails with this message:
java.lang.IllegalStateException: Can not perform this action inside of onLoadFinished
because within FragmentManagerImpl
this code is executed:
It turns out that mNoTransactionsBecause
value is not null and it is set in LoaderManagerImpl.LoaderInfo
when the result is returned back to onLoadFinished
I was looking at the various variables trying to somehow change tramsaction.commit()
to transaction.commitAllowingStateLoss()
but everything related to transaction seems to be private or at least package-protected.
Can someone give me a general idea if I can do what I need to do (and how)?
Just to note that my code works fine if instead of using Loader I run the loading ops in AsyncTask
android - 使用 FragmentPagerAdapter 的 ViewPager 中的片段在第二次查看时为空白
我有一个片段界面,底部带有选项卡,可在主视图中打开不同的片段。
我有一个特定的片段,它是一个项目列表。如果用户选择此列表中的一个项目,则会打开另一个片段,其中包含一个视图分页器,该页面在前一个片段的列表中的所有项目之间水平滚动。这很好用。
viewpager 使用 FragmentPagerAdapter 来显示项目。
当用户在列表中选择一个项目,查看它,然后点击选项卡栏上的按钮返回列表,然后选择另一个项目时,就会出现问题。第二次选择一个项目时,会出现一个空白屏幕而不是查看器。发生这种情况时,我的 LogCat 中没有收到任何错误。
为什么 viewpager 只在第一次出现?
FragmentPagerAdapter:
PagerFragment:
android - 如何在我的浏览器页面之一中访问我的按钮?
我是这个android和java的新手。
我的 viewpager 现在可以滑动我所有的 xml 布局,但我不知道如何访问其中的项目。
我尝试使用Button mybutton = (Button) findViewById (R.layout.result)
,然后onClickListener
在 mybutton 中设置,但每次运行时它都被迫关闭。
这是我的代码:
android - 更改 ViewPager 以启用无限页面滚动
Jon Willis发布了关于如何使用他的代码启用无限滚动的帖子。
在那里,他说他ViewPager
在 android 支持库中对类进行了一些更改。进行了哪些更改,如何通过更改“重新编译”库ViewPager
?