前言
- 最近在看 Android 中 View 机制的详解
- 书中提到TouchSlop是系统所能识别出的被认为是滑动的最小距离,而且其与具体的设备相关。
- 于是就好奇想看看自己的手机的TouchSlop值是多少
获取过程
- 获取语句:ViewConfiguration.get(this).getScaledTouchSlop()
展现出来:
textView.setText(ViewConfiguration.get(this).getScaledTouchSlop());出现BUG:
android.content.res.Resources$NotFoundException: String resource ID #0x18
问题分析
- 分析问题:然后才发现这样返回的TouchSlop是一个int值,而setText()函数的参数为int的只有
-
- setText(int resId);
-
- 会将传进的int视为resID,所以也就出现了上述错误
改正方法:
-
- textView.setText(“”+ViewConfiguration.get(this).getScaledTouchSlop());
结果展示
- 最后可以得出本机的TouchSlop是24
- 注意:其单位为px