0
实际上,我收到了一个显示我的绘图并在屏幕中心显示所选项目的图库。如何在Android中创建“偏离中心”的图库
我希望我选择的项目是“偏离中心”(例如:定位在左边的50dip)。
我试图添加一些填充视图和画廊上。我也证实了我的画廊的严重性没有设置在“中心”
顺便说一句,我猜画廊的常见行为是在屏幕中心显示选定的项目。
是否有任何可能的方法来改变所选项目的位置?
非常感谢!如果需要,我可以添加我的代码。
实际上,我收到了一个显示我的绘图并在屏幕中心显示所选项目的图库。如何在Android中创建“偏离中心”的图库
我希望我选择的项目是“偏离中心”(例如:定位在左边的50dip)。
我试图添加一些填充视图和画廊上。我也证实了我的画廊的严重性没有设置在“中心”
顺便说一句,我猜画廊的常见行为是在屏幕中心显示选定的项目。
是否有任何可能的方法来改变所选项目的位置?
非常感谢!如果需要,我可以添加我的代码。
我终于得到了答案。
首先,您必须将ScrollX设置为与您想要的像素间隔相对应的特定值。
但唯一的解决方案的问题是,选择一个项目,你需要点击屏幕的中心,这是不公平的。
其次,你必须重写库,实现这一OnDoubleTapListener并把他加一个定制的监听器(称为例如onItemTapListener)是这样的:
public void setOnTapItemMenuListener(OnTapItemMenuListener listener) {
onTapItemMenuListener = listener;
}
我犯了这样的接口来实现我的新听众:
public interface OnTapItemMenuListener {
public abstract void onTap(int intPosition);
}
而关于事件“onSingleTapConfirmed”因为OnDoubleTapListener的实施来实现,你赶上了事件,并验证event.getX()是到一定的位置,这样,例如:
if (event.getX()/intWidth > 0.20f && event.getX()/intWidth < 0.45f) {
Log.i("TAG", "onSingleTapConfirmed on the right area, we launch onTap for the Listener");
onTapItemMenuListener.onTap(this.getSelectedItemPosition());
} else {
Log.i("TAG", "onSingleTapConfirmed on the wrong area, we don't launch onTap for the Listener");
}
其中intWidth是当前屏幕的像素宽度。
我想你应该探索库的源代码,看看它是如何做,并马贝它会给你一些线索... – Sephy
好吧,你说答案很简单: 添加50dip以滚动的画廊X参数。 – Thordax