我的应用程序中有一个ViewPager,我想随时禁用/允许向右滑动。viewpager中的每个视图都包含ListView。我该怎么做?我正试图这样做:
private int oldX;
private int deltaX = 0;
@Override
public boolean onTouch(View view, MotionEvent motionEvent) {
if (motionEvent.getAction() == MotionEvent.ACTION_MOVE || motionEvent.getAction() == MotionEvent.ACTION_DOWN) {
int newX = (int) motionEvent.getX();
deltaX = oldX - newX;
oldX = newX;
}
if (motionEvent.getAction() == MotionEvent.ACTION_UP) {
oldX = 0;
}
return deltaX < 0;
}
但视图仍将向右移动一点。有人在解决同样的问题吗?
我能够在ViewPager中实现单面滚动,方法是将其代码带到我的应用程序中并添加以下内容
private boolean performDrag(float x) {
boolean needsInvalidate = false;
final float deltaX = mLastMotionX - x;
mLastMotionX = x;
// MY CODE STARTS
if (deltaX < 0) {
return false;
}
// MY CODE ENDS
float oldScrollX = getScrollX();
...
它似乎工作得很好。您可能只需要使用适配器代码或提供您自己的适配器,因为在其代码中使用的某些方法ViewPager
在PagerAdapter
中不是公共的。
我使用ViewPager作为主布局,对于单个寻呼机视图,我使用Fragments。选项卡是操作栏的一部分。我想使用操作栏中的刷新按钮刷新当前选项卡。 我的MainActivity.java 这是我的一个Tabs StartPage.java
我把一切都解决了,但有一个问题。我有4个不同的碎片。其中一个包含ListView。当我单击ListView中的一项时,更改全局变量。如果然后返回到其他片段,这些它们应该被改变。因为他们使用这个变量作为参数。但它们不会改变。 我的碎片 其他片段使用相同的加载
我有一个由片段填充的ViewPager。特别是,我有一个片段,它显示了Addresses对象的列表和一个允许创建新地址的列表。添加新地址的过程如下: 因此,当添加新地址时,我回到AddressListFragment,它是ViewPager中的活动地址。我需要更新该片段,以便更新列表与新添加的地址时,我回来它!我需要在那个片段上重写一个特定的方法吗? 提前道谢!
主要内容:本节引言:,1.ViewPager的简单介绍,2.PagerAdapter的使用,3.ViewPager结合Fragment示例,4.代码示例下载,本节小结:本节引言: 本节带来的是Android 3.0后引入的一个UI控件——ViewPager(视图滑动切换工具),实在想不到 如何来称呼这个控件,他的大概功能:通过手势滑动可以完成View的切换,一般是用来做APP 的引导页或者实现图片轮播,因为是3.0后引入的,如果想在低版本下使用,就需要引入v4 兼容包哦~,我们也可以看到,Vie
我从web服务接收数据,这些数据被解析为类中的一个对象,在我的例子中,该对象是类,它包含一个列表,这些选项卡应该填充。因此,该报告存储在Application类中的参数中。 每个选项卡都应该是中的一个页面。因此,当我第一次接收数据并对其进行解析时,所有工作都很完美,视图分页程序中填充了正确的数据并将其呈现出来。 当主要两点是从/中删除以前添加的片段时,使用在中显示正确的片段集,以及在添加新的视图之