首页
Python
Java
IOS
Andorid
NodeJS
JavaScript
HTML5
安卓 AndroidPdfViewer 禁止手势
2024-09-05
Android原生PDF功能实现:PDF阅读、PDF页面跳转、PDF手势伸缩、PDF目录树、PDF预览缩略图
1.背景 近期,公司希望实现安卓原生端的PDF功能,要求:高效.实用. 经过两天的调研.编码,实现了一个简单Demo,如上图所示. 关于安卓原生端的PDF功能实现,技术点还是很多的,为了咱们安卓开发的同学少走弯路,通过此文章,简单讲解下Demo的实现原理和主要技术点,并附上源码. 2.安卓PDF现状 目前,PDF功能仍然是安卓的一个短板,不像iOS,有官方强大的PDF Kit可供集成. 不过,安卓也有一些主流的方案,不过各有优缺点: 1.google doc 在线阅读,基于webview,国内需
iOS 禁止手势滑动翻页
- (void)viewDidAppear:(BOOL)animated{ [super viewDidAppear:animated]; // 禁用 iOS7 返回手势 if ([self.navigationController respondsToSelector:@selector(interactivePopGestureRecognizer)]) { self.navigationController.interactivePopGestureRecognizer.enabled =
使用Xpose突破安卓App禁止截屏限制
WindowManager.LayoutParams.FLAG_SECURE标志的app,这里需要注意下支付宝.网上银行类的app不建议拦截,像支付宝里的付款码,商家拿到后,直接就能扣费,不需要用户这边的确认.所以其实这款应用是可以用在多个有同样原理的APP当中,只要是不允许截图的应用应该都能通过这种方式来绕过这个限制. 近期为了解决截屏问题,找了不少文章.很多提到了Root,但是这个很多手机都不支持Root了. 以下为找遍所有资料,亲测可以解决的方案. 原理就是使用大名鼎鼎的Xpose,这个可
React native 禁止手势触摸 pointerEvents
碰到一个需求是做个轮播图带自动播放的,UED那边给轮播的底部加了阴影渐变,如下红色区域. 这样会导致一个问题,手触摸在红色区域会被这层View挡住,导致不能手动滑动切换. 原先采取过的方法是在对应的触摸事件 执行return false ,但是这个局限于轮播图得是红色区域的父组件.不然触摸无法冒泡上去. 发现有个好用的属性,以前从来没用过.pointerEvents 看看官网的介绍: 用于控制当前视图是否可以作为触控事件的目标. auto:视图可以作为触控事件的目标. none:视图不能作为
ios、安卓的兼容性
日期转换成时间戳: 安卓下可以使用 Date.parse(new Date('2019-11-18 12:00:00')) 直接转换,结果为 1574049600000 ios下 Date.parse(new Date('2019-11-18 12:00:00')) 无法转换,需要写成Date.parse(new Date('2019/11/18 12:00:00')) ,就是将“-”换成“/”,date=date.replace(/\-/g, "/"); 兼容写法: Date.par
ios、安卓前端兼容性
1.日期兼容性 解决方法(请看我上一篇文章)安卓.ios时间转换成时间戳的形式 2.input框聚焦,ios出现outline或者阴影,安卓显示正常 解决方法 input:focus{outline:none} input:{-webkit-appearance: none;} 3.关于flex布局 解决方法flex布局对于低版本的安卓,不支持flex-wrap:wrap属性,但是ios系统支持换行属性,这个时候如何解决呢?当然是不使用换行啦.如果你的布局必须要用到换行,那就在外层包裹一个大的d
Andriod手势密码破解
★ 引子 之前在Freebuf上看到一片文章讲Andriod的手势密码加密原理,觉得比较有意思,所以就写了一个小程序试试. ★ 原理 Android的手势密码加密原理很简单: 先给屏幕上的每一个点编号(一般是 3 X 3): 00,01,02 03,04,05 06,07,08 注意这里的数字都是十六进制. 假设我沿着左边和下边画了一个 L 字,则手势的点排列顺序 sequence 是 00,03,06,07,08. 然后计算密文 C = SHA-1(sequence),然
【前端开发】禁止微信内置浏览器调整字体大小的方法js
微信webview内置了调整字体大小的功能,用户可以根据实际情况进行调节.但是很多移动端页面的开发都是使用rem作为单位的,字体大小改变以后,会出现页面布局错乱的情况,因此希望能够禁止微信的字体放大功能,下面是通过查找资料找到的一些解决方法. 1.安卓手机禁止微信客户端修改字体大小 <!-- 强制禁止用户修改微信客户端的字体大小---begin--- --><script> (function() { if (typeof WeixinJSBridge == "objec
H5禁止微信内置浏览器调整字体大小
微信webview内置了调整字体大小的功能,用户可以根据实际情况进行调节.但是这也会导致字体大小改变以后,出现页面布局错乱的情况. 1.iOS的解决方案是覆盖掉微信的样式: body { /* IOS禁止微信调整字体大小 */ -webkit-text-size-adjust: 100% !important; text-size-adjust: 100% !important; -moz-text-size-adjust: 100% !important; } 2.安卓手机禁止微信客户端修改字
WPF实现手势解锁
桌面程序的解锁方式一般是账号密码,互联网的可以使用扫码解锁,甚至人脸识别.但扫码需要网络,人脸识别又较复杂.所以就想把安卓常用的手势解锁移植到桌面程序上. 先来张效果图,有兴趣的往下看,没兴趣的打扰了. WPF手势解锁使用鼠标点击事件,鼠标移动事件,鼠标弹起事件实现.自定义了三个属性(初始化颜色,选中颜色,选中点的集合),一个事件(绘制完成后触发的事件). 实现的功能: 绘制过程中直线随鼠标移动的效果 绘制两个连接点的连线 绘制完成后可调用的事件 实现初始化颜色,选中颜色,选择连接点依赖属性 源
高德打车对接loader.js文件的实现
const u = navigator.userAgent;const isAndroid = u.indexOf('Android') > -1 || u.indexOf('Adr') > -1; //android终端const isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios终端function getIOSBridge(callback) { return new Promise(resolve => { if (
使用iScroll和photoswipe写手机浏览图片的插件的几点经验
首先,当我知道我得到一个任务需要写一个在手机上能浏览图片的插件时,我第一想到了iScroll.它的左右滑动,上下滑动的效果在安卓手机上也能让用户有良好的体验,自己写也能方便控制. 我的需求是,插件要能左右滑动图片,当图片很长的时候要能上下滑动浏览全部图片,还要支持手势缩放,特别是较长或者较宽的图片. 1. 当最开始的时候,我做了一个本地缓存,把图片保存起来,为了加载滑动图片能更加流畅. js代码:var json=new Array(); for(var i=0;i<4;i++){//4张图 j
今日推荐(三)AndroidResideMenu类似QQ侧滑效果
效果图: DEMO 本代码即是DEMO,您可以下载后选择您喜欢的IDE运行.SDK版本建议使用4.0以上 Version Migration 从 v1.0, v1.1, v1.2, v1.3 升级到 v1.4 如果你开启了手势滑动,你需要替换被依附的 Activity 里 dispatchTouchEvent() 代码 @Override public boolean dispatchTouchEvent(MotionEvent ev) { return resi
水平方向的RecyclerView
最近做了一个项目需要实现一个卡片式的水平滑动,但是不能手势滑动,点击卡片上的按钮之后滑动到下一个卡片,所以想到用RecyclerView实现,去掉它的手势滑动,点击按钮之后再代码控制滑动到下一个卡片. 接下来就是一步一步的实现. 1.引入RecyclerView. compile'com.android.support:recyclerview-v7:25.+' 2.在布局文件中使用RecyclerView. <android.support.v7.widget.RecyclerView and
meta 标签汇总
HTML 里 meta常用标签: " class="mathcode" src="https://private.codecogs.com/gif.latex?%5Csmall%20%3Cmeta%20name%3D%22renderer%22%20content%3D%22webkit%7Cie-comp%7Cie-stand%22%3E"> content的取值为webkit,ie-comp,ie-stand之一,区分大小写. 分别代表用webk
[转] meta标签的作用及整理
meta的标签的使用是我在前端学习中曾经困惑过一段时间的问题.一方面不是很了解meta标签的用途,另一方面是对于meta标签里的属性和值不是懂,也不知道从哪里冒出来的,所以这篇文章专门整理下meta标签,一个必用且关键的标签. 什么是meta标签? 引自下W3school的定义说明一下. 元数据(metadata)是关于数据的信息. 标签提供关于 HTML 文档的元数据.元数据不会显示在页面上,但是对于机器是可读的. 典型的情况是,meta 元素被用于规定页面的描述.关键词.文档的作者.最后修改
Spring WebSocket踩坑指南
Spring WebSocket踩坑指南 本次公司项目中需要在后台与安卓App间建立一个长连接,这里采用了Spring的WebSocket,协议为Stomp. 关于Stomp协议这里就不多介绍了,网上一搜一大把,这里主要说下在配置过程的踩过的那些坑. 官网才是首选 首先在我们第一次尝试WebSocket肯定会搜寻各种各样的博客,在看完关于Stomp和长连接的基础知识,确定使用Spring WebSocket后,请马上进入官网Spring WebSocket,并下载该网站右侧的源码,这将节省大量时
11.10 Daily Scrum
工作进度有点拖后,之后几天要加快步伐了. Today's tasks Next week 丁辛 餐厅列表UI设计 餐厅列表事件处理 李承晗 实现指定地点搜索 实现指定地点搜索 王逸翔 实现动画 实现动画 赵梓皓 学习安卓划动手势相关内容 主界面实现 刘文乔 菜谱列表数据结构设计 菜谱列表UI设计 李靖 具体菜谱信息数据结构设计 具体菜谱UI设计 邹嘉欣 实现餐厅收藏夹 实现餐厅收藏夹
11.7 Daily Scrum(周末暂停两天Daily Scrum)
由于APEC放假,有些成员离校了,他们那部分的任务会暂时拖后一些,之后会加班加点赶工. 另外,每个人的任务还是相对独立,离校成员的任务进度不会对其他成员的进度造成很大影响. Today's tasks Next week 丁辛 餐厅列表UI设计 餐厅列表UI设计 李承晗 学习百度地图API的使用 实现指定地点搜索 王逸翔 学习安卓动画相关内容 实现动画 赵梓皓 学习安卓划动手势相关内容(延后) 主界面实现 刘文乔 菜谱列表数据结构设计(延后)
11.5 Daily Scrum
请把现在当成11月5日······ Today's tasks Tomorrow's tasks 丁辛 餐厅列表数据结构设计 餐厅列表UI设计 李承晗 学习百度地图API的使用 学习百度地图API的使用 王逸翔 学习安卓动画相关内容 学习安卓动画相关内容 赵梓皓 学习安卓划动手势相关内容 主界面实现 刘文乔 菜谱列表数据结构设计 菜谱列表UI设计 李靖 具体菜谱信息数据结构设计 具体菜谱UI设计 邹嘉欣 学习“收藏夹”相关内容 学习“收藏夹”相
11.4 Daily Scrum
今天依旧是学习阶段,大家继续学习安卓的一些相关内容,并尝试将要用到的数据的API应用到程序中去. Today's tasks Tomorrow's tasks 丁辛 餐厅列表json/xml数据信息整合 餐厅列表数据结构设计 李承晗 学习百度地图API的使用 学习百度地图API的使用 王逸翔 学习安卓动画相关内容 学习安卓动画相关内容 赵梓皓 学习安卓划动手势相关内容 学习安卓划动手势相关内容 刘文乔 菜谱列表json/xml数据信息整合 菜谱
热门专题
正则只能输入整数 不能输入e字母
在域名www.tsinghua.edu.cn中,二级域名是
svn 获取增量class
EventUtil和addEventListener
ds18b20温度传感器 数码管显示温度值,设定阈值温度代码
centos6 tomcat版本查看
server2008以管理员运行程序提示无法找到程序
kafka集群一个节点挂了服务无法消费
怎样用python语言的turtle绘图绘制直方图
编程strach的滑雪程序
如何查看依赖是哪种协议bsd mit
python 如何用当前时间和图片的创建时间进行比较
getCanonicalHostName时间久
axios 获取本地xml文件
grok表达式中%{}
avalonjs官网
C# AES CBC加解密使用
文件资源管理器无法记忆上次窗口
idea actuator 无法显示路由
SQL sever2005无权创建新对象怎么回事