首页
学习
活动
专区
圈层
工具
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

嵌入式(触摸板库tslib的编译和配置)

作为基本输入设备,触摸板几乎是交互式嵌入式系统的标配。当我们知道了可以通过设备节点读取触摸板数据后,我们需要进一步优化这些直接获取的原生数据,比如去抖、消噪、校准等。...优化触摸板的 raw (原生)数据是一项十分复杂的算法任务,涉及诸如矩阵运算、行列式等高等数学,一般需要有比较扎实的数学背景的算法工程师来做,他们的其中一项杰出成果,便是今天要介绍的 tslib 库了。...没有 使用 tslib 库之前,操作触摸板设备的代码样子是这样的:(丑翻天!!) ? 经过 tslib 库整容之后,操作触摸板的代码是这样子的:(美轩完!!) ?...莫方,我看你有缘,今日将祖传秘方传授与你(默默承认我这年龄不应有的智慧和大度):那就是,将源码顶层目录下的 config.h文件的第181行,删除!然后重新 make ,问题解决。...没错,就是把第 2 行前面的井号 # 和空格删除,注意,我说井号和空格,我没说井号,好之为之。

2.4K30

键盘工具栏的快速集成--IQKeyboardManager

IQKeyboardManager,是一个键盘工具栏的库: 默认支持UITextField、UITextView、UIWebView、UIScrollView、UITableView、UICollectionView...左右两个切换按钮用来切换不同的文本框 会根据文本框的键盘类型对弹出键盘的样式做出调整  排列依据是看addSubView的先后顺序 右边的done是用来收起键盘的  另外也可以设置点击空白区域收起键盘的属性...中间的文字默认是文本框的占位文字 因为这个库是单例模式的 也就是说无论在哪设置了一个属性 那么这个属性对全局都是生效的  所以一般我习惯把这个方法写在- (BOOL)application:(UIApplication...*)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {}方法里面  另外  只要导入这个库  即使不做任何操作的话...地址:gitHub Demo(提取码:50d4)   参考资料 另外:这个库还自定义了带有展位文字的textView: ?

993140
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    史上最详细的iOS之事件的传递和响应机制-原理篇

    , offsetX, offsetY);} ---- (三)iOS中的事件的产生和传递 3.1.事件的产生 发生触摸事件后,系统会将该事件加入到一个由UIApplication管理的事件队列中,为什么是队列而不是栈...3.2.事件的传递 触摸事件的传递是从父控件传递到子控件 也就是UIApplication->window->寻找处理事件最合适的view 注 意: 如果父控件不能接受触摸事件,那么子控件就不可能接收到触摸事件...总结一下 1.点击一个UIView或产生一个触摸事件A,这个触摸事件A会被添加到由UIApplication管理的事件队列中(即,首先接收到事件的是UIApplication)。...也就是说,如果蓝色视图不能处理事件,点击蓝色视图产生的触摸事件不会由被点击的视图(蓝色视图)处理! 注意:如果设置父控件的透明度或者hidden,会直接影响到子控件的透明度和hidden。...也不能处理该事件或消息,则将其丢弃 事件处理的整个流程总结:   1.触摸屏幕产生触摸事件后,触摸事件会被添加到由UIApplication管理的事件队列中(即,首先接收到事件的是UIApplication

    11.8K70

    iOS-UITouch事件处理详解1. iOS中的事件基本介绍2.UITouch3.UIEvent4. 事件的产生和传递5. 通过UITouch方法监听View的触摸事件的缺点

    view; //记录了前一个触摸点的位置 3.UIEvent UIEvent:称为事件对象,记录事件产生的时刻和类型 每产生一个事件,就会产生一个UIEvent对象 常见属性 //事件类型 @property...事件的产生和传递 4.1 事件产生和传递过程 发生触摸事件后,系统会将该事件加入到一个由UIApplication管理的事件队列中 UIApplication会从事件队列中取出最前面的事件,并将事件分发下去以便处理...找到最合适的控件图示 触摸事件的传递从父控件传递到子控件 点击了绿色的view: UIApplication -> UIWindow -> 白色 ->橙色(发现触摸点不在自己身上,判断自己不是) -...UIApplication -> UIWindow -> 白色 -> 橙色 -> 红色(发现触摸点不在自己身上,判断自己不是) -> 蓝色 -> 黄色 4.3 UIView不接收触摸事件的三种情况 不接收用户交互...则其将事件或消息传递给UIApplication对象 如果UIApplication也不能处理该事件或消息,则将其丢弃 注: 响应者链条:由多个响应者对象连接起来的链条,能很清楚的看见每个响应者之间的联系

    1.8K60

    iOS应用调用系统打电话、发短信和发邮件功能引1、打电话2、发短信3、发邮件

    引 在应用程序内,调用系统的功能来实现打电话、发短信和发邮件,通过电话号码或者邮箱,直接跳转到系统的功能界面。...UIWebView *callWebview =[[UIWebView alloc] init]; NSURL *telURL =[NSURL URLWithString:[NSString stringWithFormat...2)UIApplication方式 使用UIApplication来跳转,同样传递和上一种方式同样的URL,这种方式不会弹出提示问你确认拨打与否,而是直接拨打,打完也会停在通讯录那,不会回到应用,不推荐...方式 使用UIApplication来跳转,这种方式会在后台直接发送,不推荐。...,后接邮箱地址: UIWebView *emailWebview =[[UIWebView alloc] init]; NSURL *emailURL =[NSURL URLWithString:[

    4.2K50

    iOS面试题:事件传递和响应机制

    事件的产生 发生触摸事件后,系统会将该事件加入到一个由UIApplication管理的事件队列中,为什么是队列而不是栈?...事件的传递 触摸事件的传递是从父控件传递到子控件 也就是UIApplication->window->寻找处理事件最合适的view 注 意: 如果父控件不能接受触摸事件,那么子控件就不可能接收到触摸事件...,也不管触摸点在不在这个控件上,事件都会先传递给这个控件,随后再调用hitTest:withEvent:方法 2.如果hitTest:withEvent:方法中返回nil,那么调用该方法的控件本身和其子控件都不是最合适的...总结 事件处理的整个流程总结: 1.触摸屏幕产生触摸事件后,触摸事件会被添加到由UIApplication管理的事件队列中(即,首先接收到事件的是UIApplication)。...2.UIApplication会从事件队列中取出最前面的事件,把事件传递给应用程序的主窗口(keyWindow)。 3.主窗口会在视图层次结构中找到一个最合适的视图来处理触摸事件。

    1.3K10

    WKWebView不显示JS的Alert,Confirm,TextInput弹框解决方法

    最新项目使用网页加载页面的基本上都由UIWebView转到WKWebView了,然后刚刚才发现用了WKWebView之后不会弹窗提示了,查了一下知道原来WKWebView默认禁止了下面的跳转: 打开itunes.apple.com...跳转到App Store, 拨打电话, 唤起邮箱等一系列操作 JS的Alert,Confirm,TextInput弹框 解决方法: 首先实现WKUIDelegate代理方法 解决唤不起打电话和跳转系统应用的方法...decisionHandler { NSURL *URL = navigationAction.request.URL; NSString *scheme = [URL scheme]; UIApplication...*app = [UIApplication sharedApplication]; // 打电话 if ([scheme isEqualToString:@"tel"]) {...if ([app canOpenURL:URL]) { [app openURL:URL]; // 一定要加上这句,否则会打开新的页面

    7.3K30

    实践-小效果 II

    ---- 1.设置角标和通知数. ? self.tabBarItem.badgeValue = @"1"; 即可 ?...iOS7、iOS9、iOS10 UIApplication *app = [UIApplication sharedApplication]; // 应用程序右上角数字 app.applicationIconBadgeNumber...设置UIWebView的背景为透明。并且需要设置 contentWeb.opaque = NO; 使用webView加载百度编辑器编辑后上传的图文文本图片显示不全 ? 修改前 ?...支付密码.gif 说明,仿支付宝支付密码支付弹框,网上有很多例子,本次就一个很简单的效果做解析,效果如图所示 实现关键: 创建一个有边框的长矩形View,往view上添加一个 UITextFeild和...5条竖线,和6个隐藏起来的Label,每个Label是一个原点形状,不用于显示数字,只为展示一个点状,把6个Label装入一个数组中。

    1.3K10

    iOS学习巩固笔记-UIWebViewJavaScript

    1 UIWebView简介 UIWebView是iOS内置的浏览器控件 系统自带的Safari浏览器就是通过UIWebView实现的 UIWebView不但能加载远程的网页资源,还能加载绝大部分的常见文件...UIWebView常用属性和方法 重新加载(刷新) - (void)reload; 停止加载 - (void)stopLoading; 回退 - (void)goBack; 前进 - (void)goForward...的加载过程 成为UIWebView的代理,遵守UIWebViewDelegate协议,就能监听UIWebView的加载过程 - (void)webViewDidStartLoad:(UIWebView...,那么就用谁来进行创建 //注意:签名一般是用来设置参数和获得返回值的,和方法的调用没有太大的关系 NSMethodSignature *signature = [ViewController..."; //注意: //1.自定义的参数索引从2开始,0和1已经被self and _cmd占用了 //2.方法签名中保存的方法名称必须和调用的名称一致 [invocation

    1.3K70

    UI篇-UIResponder之事件传递和响应精析

    iOS中的几种常见事件 ? 这篇文章只讨论触摸事件。...,并将它们封装在UITouch和UIEvent形式的实例,消息循环(runloop)会接收到触摸事件并放入当前应用程序的事件队列中。...UIApplication、UIView、和所有从UIView派生出来的UIKit类(包括UIWindow)都直接或间接地继承自UIResponder类。...响应者链:由一系列“下一个响应者”组成 其顺序如下: 1.iOS系统在处理事件时,通过UIApplication对象和每个UIWindow对象的sendEvent:方法将事件以消息的形式分发给具体处理此事件的第一响应者...跟UIResponder相关其他值得注意的地方 UIApplication对象和每个UIWindow对象都在sendEvent:方法(两个类都声明了这个方法)中派发事件。

    2.7K30

    iOS-控件响应用户控制事件之事件处理

    )view; 该方法记录了前一个触摸点的位置 UIEvent 每产生一个事件,就会产生一个UIEvent对象 UIEvent:称为事件对象,记录事件产生的时刻和类型 常见属性 事件类型 @property...@property(nonatomic,readonly) NSTimeInterval timestamp; 事件的产生和传递 发生触摸事件后,系统会将该事件加入到一个由UIApplication...2.UIApplication会从事件队列中取出最前面的事件,并将事件分发下去以便处理,通常,先发送事件给应用程序的主窗口(keyWindow) 3.主窗口会在视图层次结构中找到一个最合适的视图来处理触摸事件...,如果也不能处理收到的事件或消息,则其将事件或消息传递给window对象进行处理 如果window对象也不处理,则其将事件或消息传递给UIApplication对象 如果UIApplication也不能处理该事件或消息...监听触摸事件的做法 如果想监听一个view上面的触摸事件,之前的做法是 自定义一个view 实现view的touches方法,在方法内部实现具体处理代码 通过touches方法监听view触摸事件,有很明显的几个缺点

    1.1K70

    手机QQ空间iPhone X适配总结

    屏幕的比例也和现在机型不再一样,所以在做全屏的渲染时需要考虑裁剪加黑边的情况,如下图所示。 [image.png] 适配过程 NeXT,下面开始填坑过程。...根据官方设计规范,我们需要将界面内容分为两类:纯展示类的和可交互类的。...这个坑可能不能算是iPhone X的坑,应该是iOS11的坑,也可以说是被弃用的UIWebView的坑,就是调整UIScrollView内部偏移的方法改为设置contentInsetAdjustmentBehavior...然而,对于UIWebView,我们通过一般方法只能设置其最外层的UIScrollView的behavior,对于里层的UIScrollView就无能为力了,因此我们需要hook系统创建UIWebView...应用启动时,在初始化rootViewController的过程中,通过[UIApplication sharedApplication].keyWindow获取的keywindow是nil,这时window

    2K30

    键盘工具栏的快速集成--IQKeyboardManager

    转自:http://www.cnblogs.com/gaoxiaoniu/p/5333187.html 键盘工具栏的快速集成--IQKeyboardManager IQKeyboardManager,是一个键盘工具栏的库...默认支持UITextField、UITextView、UIWebView、UIScrollView、UITableView、UICollectionView 左右两个切换按钮用来切换不同的文本框 会根据文本框的键盘类型对弹出键盘的样式做出调整...排列依据是看addSubView的先后顺序 右边的done是用来收起键盘的 另外也可以设置点击空白区域收起键盘的属性 中间的文字默认是文本框的占位文字 因为这个库是单例模式的 也就是说无论在哪设置了一个属性...那么这个属性对全局都是生效的 所以一般我习惯把这个方法写在 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions...:(NSDictionary *)launchOptions { // 方法里面 } 另外只要导入这个库 即使不做任何操作的话 默认也是会添加工具条的 使用: 首先要导入收文件: #import

    1.5K110

    iOS14开发-触摸与手势识别

    触摸 概念 UITouch 用于描述触摸的窗口、位置、运动和力度。一个手指触摸屏幕,就会生成一个 UITouch 对象,如果多个手指同时触摸,就会生成多个 UITouch 对象。...属性 (1)window:触摸时所处的 UIWindow。 (2)view:触摸时所处的 UIView。 (3)tapCount:短时间内点按屏幕的次数。可据此判断单击和双击操作。...记录了触摸事件产生或变化时的时间。 (5)phase:触摸事件的周期,即触摸开始、触摸点移动、触摸结束和中途取消。 方法 // 返回一个CGPoint类型的值,表示触摸在view上的位置。...事件传递 当 iOS 程序中发生触摸事件后,系统会将事件加入到 UIApplication 管理的一个任务队列中。 UIApplication 取出最前面的事件传递给 UIWindow。...将手势添加到需要的 UIView 上。每个手势只对应一个 UIView,当屏幕触摸在当前 UIView 里时,如果手势和预定的一样,回调方法就会调用。

    2.6K20
    领券