# AnimSwitch **Repository Path**: gentlemanyc/AnimSwitch ## Basic Information - **Project Name**: AnimSwitch - **Description**: Android带动画效果的开关控件。 - **Primary Language**: Android - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 7 - **Forks**: 1 - **Created**: 2015-08-23 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README #AnimSwitch ### 介绍: 使用Canvas绘制的带动画效果的开关控件。和MIUI里的开关控件效果类似;不支持手势滑动。(其实是没什么卵用的效果,后面有时间我会把它加进去)。 ### 使用方法 1. 在xml定义: ``` ``` layout_width如果为wrap_content那么它默认的宽度为25dp.你不用去设置它的高度,它是宽的一半。默认的圆的边距为高度的15%。 如果你设置switch_type="type_rect"那么radius无效(为0)。 如果你设置switch_type="type_circle"(为默认值,可以不用设置。),且radius="0"(可不用设置,默认为圆形),则为圆形。如果radius大于0,则为圆角矩形。 1. 在代码中初始化: 如果你在Activity的初始化方法中去初始化需要调用这个方法: ``` 开:setOn(false);关:setOff(false); ``` 参数传false。因为初始化进入时不需要动画,否则会有延时。如果需要动画参数传true。或者调用无参的方法: ``` setOn();setOff(); ``` 设置监听: ``` ((AnimSwitch) findViewById(R.id.switch_call_local_contacts)).setSwitchListener(new OnSwitchChangedListener() { @Override public void onChanged(boolean isOn) { //do something... } }); ``` ### 上个图: ![截图](http://git.oschina.net/uploads/images/2015/0911/005041_5db2894d_134008.png "在这里输入图片标题")