仿IPhone 开关控件 自定义View(一)

自定义View 是Android中常用的方法之一,本章实现类似于IPhone 开关控件,实现效果如下:

640?wx_fmt=jpeg

开启

640?wx_fmt=jpeg

关闭

本篇文章主要介绍 Android 开发中的部分知识点,通过阅读本篇文章,您将收获以下内容:

1.自定义View,继承View类

欢迎关注微信公众号:程序员Android

微信公众号:ProgramAndroid

我们不是牛逼的程序员,我们只是程序开发中的垫脚石。

1.自定义View,继承View类

自定义View 实现主要继承View,并实现View的一些方法

640?wx_fmt=jpeg

2.引用自定义View布局

引用自定义View跟普通View 一样,在XML 中直接导入自定义View类的布局即可,实现如下:

640?wx_fmt=png

使用自定义View布局方法

3.自定义View 素材

640?wx_fmt=png

关闭背景图

640?wx_fmt=png

开启背景图

640?wx_fmt=png

白色原点图片

4.Activity 中使用自定义View 控件的方法

自定义View 控件跟其他系统控件(Button)使用方法类似,具体使用方法如下:

640?wx_fmt=png

Activity 中使用自定义View 控件的方法

至此,本篇已结束,如有不对的地方,欢迎您的建议与指正。期待您的关注,

欢迎关注微信公众号:程序员Android

微信公众号:ProgramAndroid

我们不是牛逼的程序员,我们只是程序开发中的垫脚石。

640?wx_fmt=gif

点击阅读原文,获取更多福利

640?wx_fmt=gif

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
苹果提供了UIGestureRecognizer类,可以用来实现自定义手势。下面是一个简单的例子,实现在屏幕上绘制一个“V”形手势来触发事件: 1. 首先在视图控制器中创建一个手势识别器对象: ``` @property (nonatomic, strong) UIGestureRecognizer *gestureRecognizer; ``` 2. 在viewDidLoad方法中,创建手势识别器并将其添加到视图上: ``` self.gestureRecognizer = [[UIGestureRecognizer alloc] initWithTarget:self action:@selector(handleGesture:)]; [self.view addGestureRecognizer:self.gestureRecognizer]; ``` 3. 实现手势处理方法,当手势被识别时,执行自定义的事件: ``` - (void)handleGesture:(UIGestureRecognizer *)gestureRecognizer { if (gestureRecognizer.state == UIGestureRecognizerStateEnded) { NSArray *points = [gestureRecognizer valueForKey:@"touches"]; CGPoint startPoint = [[points firstObject] locationInView:self.view]; CGPoint endPoint = [[points lastObject] locationInView:self.view]; // 计算手势的方向 CGFloat dx = endPoint.x - startPoint.x; CGFloat dy = endPoint.y - startPoint.y; if (dx > 0 && dy < 0 && fabs(dx) > fabs(dy)) { // 手势为向右上方,执行自定义事件 [self doSomething]; } } } ``` 在上面的代码中,我们使用了touches属性获取手势的起点和终点,然后计算手势的方向,最后根据手势的方向执行自定义事件。 注意:在创建手势识别器时,需要指定手势的类型,例如: ``` UISwipeGestureRecognizer *swipeRecognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(handleSwipe:)]; swipeRecognizer.direction = UISwipeGestureRecognizerDirectionRight; [self.view addGestureRecognizer:swipeRecognizer]; ``` 上面的代码创建了一个向右滑动的手势识别器,并将其添加到视图上。当手势被识别时,会执行handleSwipe:方法。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员Android

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值