Android - ScrollView添加提示Arrow(箭头)
2014-12-07 09:02
39 查看
ScrollView添加提示Arrow(箭头)
本文地址:http://blog.csdn.net/caroline_wendy在ScrollView的滑动功能中,需要给用户提示,可以滑动,可以添加两个箭头。
定制ScrollView,创建监听器IScrollStateListener接口:
private IScrollStateListener scrollStateListener; public void setScrollStateListener(IScrollStateListener listener) { scrollStateListener = listener; } public interface IScrollStateListener { void onScrollMostLeft(); void onScrollFromMostLeft(); void onScrollMostRight(); void onScrollFromMostRight(); }
在监听滑动的时候,调用监听滑动事件(onScrollChanged):
@Override protected void onScrollChanged(int l, int t, int oldl, int oldt) { super.onScrollChanged(l, t, oldl, oldt); if (scrollStateListener != null) { if (l == 0) { scrollStateListener.onScrollMostLeft(); } else if (oldl == 0) { scrollStateListener.onScrollFromMostLeft(); } int mostRightL = this.getChildAt(0).getWidth()-getWidth(); if (l >= mostRightL) { scrollStateListener.onScrollMostRight(); } else if (oldl >= mostRightL && l < mostRightL) { scrollStateListener.onScrollFromMostRight(); } } }
在使用滑动条时,给监听事件,传递具体事务:
final ImageView leftArrow = (ImageView)view.findViewById(R.id.doctor_gather_imageview_leftarrow); final ImageView rightArrow = (ImageView)view.findViewById(R.id.doctor_gather_imageview_rightarrow); AutoHorizontalScrollView scrollView = (AutoHorizontalScrollView)view.findViewById(R.id.doctor_gather_scrollview); scrollView.setScrollStateListener(new AutoHorizontalScrollView.IScrollStateListener() { @Override public void onScrollMostLeft() { Log.e(DEBUG + TAG, "滑动条最左面"); leftArrow.setVisibility(View.INVISIBLE); rightArrow.setVisibility(View.VISIBLE); } @Override public void onScrollFromMostLeft() { Log.e(DEBUG+TAG, "滑动条离开最左面"); leftArrow.setVisibility(View.VISIBLE); rightArrow.setVisibility(View.VISIBLE); } @Override public void onScrollMostRight() { Log.e(DEBUG+TAG, "滑动条最右面"); leftArrow.setVisibility(View.VISIBLE); rightArrow.setVisibility(View.INVISIBLE); } @Override public void onScrollFromMostRight() { Log.e(DEBUG+TAG, "滑动条离开最右面"); leftArrow.setVisibility(View.VISIBLE); rightArrow.setVisibility(View.VISIBLE); } });
即可。
参考:http://stackoverflow.com/questions/9062227/how-to-set-images-for-scrollview-instead-of-fading-edges
相关文章推荐
- 给Eclipse_Android添加智能提示功能
- Android--ScrollView只能添加一个子控件问题
- Android之给应用程序的icon添加未读消息个数提示(红圈内数字)
- Android实战简易教程<四>(ScrollView和HorizontalScrollView动态添加控件并提供事件监听)
- Android添加半透明操作提示的方法
- Android SDK Manager在添加Platforms和其他Packages时提示无法在相应目录创建文件夹的解决办法!
- Android ScrollView只能添加一个子控件问题解决方法
- Android中HorizontalScrollView添加水平滚动图片
- Android添加垂直滚动ScrollView
- Android 给scrollView添加毛玻璃效果的标题栏
- ScrollView中添加一个android:fillViewport="true"
- android应用面试宝典;footerview自动添加在下翻页的最后一项;主界面返回键退出提示
- 给Eclipse_Android添加智能提示功能
- android 添加button事件后 提示 view cannot be resolved to a type
- linux下编译vlc for android 添加 截图(去掉了画中画和路径提示)及录像功能
- Android 中如何给应用添加首次使用提示
- ScrollView中添加一个android:fillViewport="true"
- Android ScrollView添加SurfaceView背景问题
- ScrollView中添加一个android:fillViewport="true"(转)
- Android Jni开发之自动化编译添加jni代码提示