ViewPager 特定版本中的 Settext 问题 - 5.1.1 android?
Posted
技术标签:
【中文标题】ViewPager 特定版本中的 Settext 问题 - 5.1.1 android?【英文标题】:Settext issue in ViewPager particular version - 5.1.1 android? 【发布时间】:2016-06-18 00:02:42 【问题描述】:我正在使用 Custom ViewPager 构建 android 应用程序。下面按以下步骤解释问题:
-
当我打开 ViewPager 的新活动并单击任何按钮并为其设置任何特定值时。它工作正常。
当我左右滑动然后单击按钮以在特定 TextView 上设置文本时出现问题;该值被设置,因为我可以使用 getText 来敬酒 TextView 的值。但是 UI 中的值不会改变。例如 - 我滑动任何页面,现在 TextView 包含我的当前位置为 2。如果我单击按钮并尝试执行 setText(position++) 并敬酒值,则增加的值会显示在敬酒中
但 TextView 仍然显示 2。
此问题在 5.1.1 中尤为突出。
【问题讨论】:
听起来 TextView 只是没有更新新值——你能发布一些代码进行分析吗? 【参考方案1】:我也和这个人战斗了好几个小时。最好我能确定 ViewPager 真的是为单个视图设计的,它在第一次出现后没有任何变化(它隐藏了 SetView 停止工作的错误)。把它想象成在一本书中显示固定的页面。
如果您在 Fragment 中有一个适配器(在我的例子中是 CursorAdapter),您可以在更新后使用适配器上的 notifyDataSetChanged() 来更新它。这仍然不能解决 setText 在第一次呈现页面后被忽略的问题。 另一种解决方案可能是使用带有活动而不是片段的操作选项卡,但这已被贬低。仍在寻找更好的解决方案。
【讨论】:
以上是关于ViewPager 特定版本中的 Settext 问题 - 5.1.1 android?的主要内容,如果未能解决你的问题,请参考以下文章
从 ViewPager Activity 访问 Fragment 的方法
android tablayout 与viewpager联动 怎样显示tab标题
ViewPager OnPageSelected()或OnPageShow()中的片段?