在ListView和Gallery等控件中,您可以将项目垂直或水平地拖放到一个方向上。如何水平拖动视图?
我有一个TextView,我成功拖动它。但我想把它在水平方向移动。我如何实现它?
感谢,
我的代码:
public class MyDragShadowBuilder extends View.DragShadowBuilder {
private static View view;
public MyDragShadowBuilder(View v) {
super(v);
view = v;
}
@Override
public void onProvideShadowMetrics(Point size, Point touch) {
width = getView().getWidth();
height = getView().getHeight();
size.set(width, height);
touch.set(width/2, height/2);
}
private int width, height;
@Override
public void onDrawShadow(Canvas canvas) {
view.draw(canvas);
}
}
在我的活动
:
tv.setOnLongClickListener(new OnLongClickListener() {
@Override
public boolean onLongClick(View v) {
ClipData data = ClipData.newPlainText("dot",
"Dot : " + v.toString());
View.DragShadowBuilder myShadow = new MyDragShadowBuilder(v);
v.startDrag(data, myShadow,(Object) v, 0);
return false;
}
});
我想模拟一个画廊。我有10000张照片来展示它。我的画廊可以显示10张照片。我想拖动包含图库内容的画廊的LinearLayout,当LinearLayout到达像SlidingDrawer这样的窗口的末端时,更改其内容并显示下面的10张照片。 SlidingDrawer是一个很好的解决方案,但它有一些限制。当您将整个LinearLayout设置为其句柄时,无法单击它。当您为其设置单独的手柄时,无法确定手柄相对于内容的位置。
你试过把它在一个HorizontalScrollView? http://developer.android.com/reference/android/widget/HorizontalScrollView.html – Jave