看到操作栏的选项卡布局现在如何被弃用,我需要使用滑动选项卡布局。
但是,我不希望用户能够滑动,因为第一个选项卡将包含一个谷歌地图,用户可以像任何普通 map 一样在其中移动和导航。
所以我想限制用户只能点击每个选项卡,而不是滑动来切换屏幕。
此外,即使用户切换标签页,我是否仍然可以保持第一个标签页加载?我不想每次都加载/重绘谷歌地图。
最佳答案
我将回答您有关在选项卡布局中禁用滑动事件的问题。
如果您在布局中使用 ViewPager
,那么您可以制作一个自定义 ViewPager
来扩展 ViewPager
并设置一个禁用和禁用的方法启用滑动。
这是一个示例:
public class CustomViewPager extends ViewPager
{
private boolean enabled;
public CustomViewPager(Context context, AttributeSet attrs)
{
super(context, attrs);
this.enabled = true;
}
@Override
public boolean onTouchEvent(MotionEvent event)
{
if (this.enabled)
{
return super.onTouchEvent(event);
}
return false;
}
@Override
public boolean onInterceptTouchEvent(MotionEvent event)
{
if (this.enabled)
{
return super.onInterceptTouchEvent(event);
}
return false;
}
public void setPagingEnabled(boolean enabled)
{
this.enabled = enabled;
}
}
从上面的代码可以看出,您可以通过调用方法setPagingEnabled(boolean enabled)
随时禁用和启用滑动。
希望对您有所帮助。 :)
关于java - Android - 如何禁用 SlidingTabLayout 的滑动方面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32444538/