首页
学习
活动
专区
工具
TVP
发布
您找到你想要的搜索结果了吗?
是的
没有找到

项目需求讨论-自定义滚轮

这次是关于滚轮方面需求,美工又出难题了。叫开发做一个滚轮,实现的效果如下GIF图所示: ? 需求: 滚轮进行滚动,并且要求是循环滚动。就是比如从A滑到了G,继续滑动又到了A。...比如A项已经滚到了中间了,然后要再点击中间那一项,然后滚轮上面空白界面相应的界面会被更新,只能点击滚轮中间那项部分,其他的点击没效果。...开始起航: 我们就一步步来,先做一个滚轮,我们知道,滚轮具有滚动效果,所以我们就直接让我们自定义滚轮继承ScrollView。...scrollerTask, newCheck); } } }; }复制代码 我们来分析下我们的init()方法,首先我们都知道ScrollView中只能有一个子控件...这时候的距离才是真正的滚轮停止的位置。

71920

Android开发笔记(六十六)自定义对话框

玩过ios的都知道,苹果手机上有个滚轮控件很酷,比Android呆板的Spinner或AlertDialog要炫很多。...不过这个滚轮控件不是本文的重点,可以利用开源代码实现滚轮,这里要做的是从页面底部弹出一个对话框,中间嵌入一个滚轮,通过滚轮来选择具体项,从而完成类似Spinner选择的功能。...接着定义一个dialog布局文件,左上角放一个取消按钮,右上角放一个确定按钮,中间放滚轮控件。然后注册相关的事件监听器,如两个按钮的点击事件,滚轮的选中事件。...下面记录滚轮控件的几个默认值,方便以后定制修改: 1、滚轮的默认背景,代码在WheelView.java的SHADOWS_COLORS 2、文字的默认大小和颜色,代码在AbstractWheelTextAdapter.java...OnClickListener { private Dialog dialog; private View view; private Context mContext; private WheelView

2.3K20

使用Android造了个滚轮控件轮子示例

关于 Android 实现 iOS 上的滚轮选择效果的控件,到 github 上一搜一大堆,之所以还要造这个轮子,目的是为了更好的学习自定义控件,这个控件是几个月前写的了,经过一段时间的完善,现在开源,...自定义控件无非是 measure,draw,layout 三个过程,如果要支持手势动作,那么就再加上 touch 。...mSelctedRect.bottom, mDrawPaint ); canvas.restoreToCount(saveCount); } layout 因为这个控件是继承于...= null) { // 禁止父控件拦截事件分发 parent.requestDisallowInterceptTouchEvent(true);...回到我实现的自定义控件来,对 touch event 的处理代码可以说是和系统控件的处理没有什么两样,在获取到拖动的距离后,根据这个值绘制不同位置的可见区域。

74220

Android项目实战(二十七):数据交互(信息编辑)填写总结

需求包括:  1、顶部两个按钮:“取消”、“确定”按钮 2、标题 3、滚动的wheelview选择器 代码实现: 1、选择一个WheelView控件,这个github上很多,我这里选用的是  https...wheel; //wheelview控件 private int currentPosition; // 当然的wheelview选择的item的位置 ArrayList datas = new ArrayList(); // wheelview的数据源   ③、生成PopupWindow的View 并获取相应控件 初始化,  从这里开始都写在构造方法里      ...wheel; //wheelview控件 private int currentPosition; // 当然的wheelview选择的item的位置 ArrayList<String...wheel; //wheelview控件 private int currentPosition; // 当然的wheelview选择的item的位置 ArrayList<String

3.5K70

Android开发笔记(六十八)工程库打包

写好一个Android模块,比如说一个自定义控件或某个功能的sdk,然后开放出来给别人使用,就得通过某种方式把源码提供给对方。...常见的打包方式有: 一、直接给源码,由开发者把代码加入到自己的工程中 该方式主要是些开源的小控件,功能比较简单也不涉及商业机密,所以独乐乐不如众乐乐。开源的自定义控件基本以这种形式发布。...如果自定义控件用到资源文件,也可以由开发者手工将资源文件加入到自己的工程,当然需要修改代码中R文件的import路径。...代码+资源文件都加入到工程,代表例子有瀑布流网格控件StaggeredGridView(package名为com.etsy.android.grid),还有滚轮控件WheelView(package名为...二、直接给源码工程,由开发者把该工程作为一个引用库加入到自己的工程中 有时候某个开源控件的规模不小,不但代码文件很多,连资源文件都不少,如果直接加入到工程的代价就比较大。

55340
领券