首页
学习
活动
专区
圈层
工具
发布

Android开发(一) 在XP系统上搭建安卓开发环境

可以随便新建一个文件夹要“拼音”的不要用中文命名!然后进行安装! 安装过程中会出现两次 安装提示 。第一次是安装 jdk ,第二次是安装 jre 。...建议两个都安装在同一个java文件夹中的不同文件夹中。(不能都安装在java文件夹的根目录下,jdk和jre安装在同一文件夹会出错) ?...1.3配置环境变量 安装好之后,配置环境变量: 打开环境变量窗口方法:右键【我的电脑】--单击【属性】--单击【高级】--单击【环境变量】。 ...通过这个办法就可以解决了!虽然下载的有点慢!但是经过一段时间后还是能下载ok的! 在第一次的时候不要选择那么多,只选择一两个就可以了!到后面需要哪个Android 版本就再另外下载哪个版本!...不然下载的会更慢!! 需要下载那个版本的,就勾选下载那个包,下载OK之后!在这里新建条目就可以了!(安装好之后,都是Installed状态的) ? 1.3 新建Manage ? ? ?

1.1K10

双击事件(dblclick)时,不触发鼠标按下(mousedown) 动作事件

在一个dom节点的事件绑定中,如果同时绑定了dblclick和mousedown那么想要执行双击事件(dblclick)时能就会触发两次mousedown事件。...在单击的时候(也就是鼠标按下的时候)不会执行双击,但是双击的时候会执行两次单击再执行双击事件。 解决的思路:要想双击时不执行单击事件,就使用定时器清除掉两个单击事件,留下一个双击事件。...因为第一次单击事件后,主线程没有任何任务,就会立马执行这个单击事件的任务。待第二次单击的时候,假设距离第一次单击事件是150ms, 如果你的定时器小于150ms, 那么第一次的任务队列就会执行完。...要想不执行第一次的任务队列,那么定时器时间间隔就必须大于两次单击的时间间隔了。这样才能清除第一次的单击事件,所以,这个200是酌情值,大于间隔就行。...第一次单击任务不执行了,是被定时器延时,然后第二次点击的时候给清除了。那么第二次点击事件呢? 在两次单击之后,会立马执行一个双击事件,双击事件的一开头就把这个第二次点击事件给清除了。

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

    Visual Studio 调试系列3 断点

    在自动,监视,或局部变量窗口中,右键单击一个属性,然后选择值更改时中断的上下文菜单中。 ?...进入到第二次循环时,按下F5,由于 index = 1,满足设置的表达式,所以命中了37行的断点。 ? 第二次循环结束后,index的值增加了1,等于2。...第一次循环结束后,index的值增加了1,等于1。进入到第二次循环时,按下F5,由于 index = 1,值更改了,满足设置的条件,所以命中了37行的断点。 ?...如果在指定断点条件时使用的语法有效但语义无效,则在第一次命中断点将出现警告消息。 在任一情况下,调试器将中断时它会命中断点无效。 仅在条件有效且计算结果为 false时才会跳过断点。...若要删除对象 ID,请右键单击中的变量局部变量窗口,然后选择删除对象 ID。 对象 ID 创建弱引用,且不会阻止对象被垃圾回收。 它们仅对当前调试会话有效。

    8.5K20

    使用 React Hooks 时需要注意过时的闭包!

    上已经收录,文章的已分类,也整理了很多我的文档,和教程资料。 最近开源了一个 Vue 组件,还不够完善,欢迎大家来一起完善它,也希望大家能给个 star 支持一下,谢谢各位了。...log()是一个过时的闭包。闭包 log()捕获了值为 "Current value is 0"的 message 变量。...然后看看控制台,每2秒出现一次Count is: 0,尽管count状态变量实际上已经增加了几次。 为什么会这样? 第一次渲染时,状态变量count初始化为0。...这是因为第二次单击的delay()闭包中已捕获了过时的count变量为0。...4.总结 当闭包捕获过时的变量时,就会发生过时的闭包问题。 解决过时闭包的有效方法是正确设置React钩子的依赖项。或者,在失效状态的情况下,使用函数方式更新状态。 ~完,我是小智,我要去刷碗了。

    3K30

    看完这篇还不会 GestureDetector 手势检测,我跪搓衣板!

    (单击事件、双击事件等等),就可以监听到单击,双击,滑动等事件,然后直接在这些方法内部进行处理。...废话不说,让我详细介绍下这类的方法:  单击回调 SingleTapConfirmed   有人就会很好奇,对于单击事件的回调,直接去用 onClickListener 不就好了么,干嘛要用 SingleTapConfirmed...其二,更具 onClickListener 的机制,我们不难发现,如果是用 onClickListener 的话,当我们双击时,我们也会调用单击事件,也就是单击了两次,这明显是不符合我们意图的。...也就是说但你点击了一个控件时(双击第一下),这个回调马上会被调用,然后迅速点第二下(双击事件的第二下),则其不会被调用。...的区别也就很明显了,onSingleTapConfirmed 在发生双击时,会回调两次,而 onSingleTapUp 只会在双击的的第一次回调。

    2.3K20

    jQuery 双击事件(dblclick)时,不触发单击事件(click)

    出处:jQuery 双击事件(dblclick)时,不触发单击事件(click) 在jQuery的事件绑定中,执行双击事件(dblclick)时能触发两次单击事件(click)。...即一个标签元素(如div等),如果元素同时绑定了单击事件(click)和双击事件(dblclick),那么执行单击事件(click)时,不会触发双击事件(dblclick), 执行双击事件(dblclick...先看一下点击事件的执行顺序: 单击(click):mousedown,mouseout,click; 双击(dblclick):mousedown,mouseout,click , mousedown,...mouseout,click,dblclick; 在双击事件(dblclick),触发的两次单击事件(click)中,第一次的单击事件(click)会被屏蔽掉,但第二次不会。...如此这般的话,只需消灭掉多余的一次单击事件(click),这个问题就解决了。

    9.1K30

    【Android开发丨主题周】Android Studio中的13条Git实践

    接下来就可以完成第一次代码提交,用鼠标选中项目根目录,并单击鼠标右键,在弹出菜单选项中选择Git→Add,这时之前暗红色的文件就会变成绿色,表示这些文件已经被Git跟踪,添加进Git的暂存区,只有添加进暂存区的文件才能完成提交...当我们再次修改代码进行提交时,就不用上述这么麻烦了,可以直接单击工具栏中的提交按钮,完成第二次提交和推送即可。提交和推送对应Git命令为:git commit和git push。 4 ....创建Git仓库时,默认创建的分支是主分支master分支,当我们第一次推送时,实际上就是将本地master分支推送到远程代码仓库,这时远程代码仓库也有了一个分支,叫origin/master。...从上图中可以看出来,从第二次提交开始出现了分叉,叉出来的分支实际上是origin/master分支,到最后本地master和远程master又合到了一个提交。...11 贮藏(Stash) 在开发中可能遇到这样的情况,我们在一个分支上做开发,这时突然接到任务要切换到其他分支修复一个bug,但当前分支的开发并没有做好,所以还不能提交,如果强行切换分支,那么我们的修改将会丢失

    3.4K21

    C#代码示例:在WinForm中创建并绑定一个DataTable

    在我的一篇文章中,我解释了如何在没有数据库的情况下以web形式绑定gridview。这里,我将解释如何在没有数据库的windows窗体中绑定datagrid。...我的要求很简单。当我们输入所有字段并单击Book按钮时。它将暂时将数据绑定到如下所示的数据网格。我已经展示了下面的截图: ? 我们来看看怎么做,以下是实现步骤。 1、创建一个数据表。...这样,我们就可以在windows窗体应用程序中绑定一个没有数据库的datagrid。 对于维护这个datagrid的状态,现在用户面临的问题是什么。...在输入第一次预订的详细信息后,当我进行第二次预订时,第一次预订的详细信息将会丢失,因此为了防止这种情况发生,您必须稍微修改一下代码。在这里,我已经解释了如何做到这一点。...如果没有数据,则绑定datagrid中的列标头,否则只绑定没有datacolumn标头的行。 这里是第一个更改:声明datatable全局变量。

    6.3K40

    Java交互界面实现计算器开发设计【附函数源码】

    但同时毕竟是两种不同的开发语言,所以在具体开发上还是有所不同的。...在这里我们需要首先定义私有的全局变量来接收在计算器运行过程中的一些变量,如输入的数值、小数点、操作符、输出框内容、计算结果等,因此对于在计算器使用过程中可能出现的变量要对其进行一一接收。...同时还应该对计算器的整个界面布局进行设计,这是大灰狼在这个程序中设计的计算器界面,可以参考: ? 在我们有了这样的总体设计之后,就是我们针对于各个函数功能的详细设计了。 ....,在这里这个变量就是INumsecand,只有我们判断到当点击了运算操作符之后,说明我们的上一个数据已经输入完成了,这时候才需要我们将INumsecand赋值给INumfirst,来说明我们得到了第一个数据...以控件数字7为例,在这里我使用num_7.getText()来获取当前所点击控件的文本,其实这是比较笨的一种方法,需要对每一个控件使用该函数,还有一种方法是获取当前焦点所在的控件,并且获取其文本,对这种方法熟悉的小伙伴可以留言大灰狼一起交流

    2.2K10

    开源本地化部署的「妙鸭相机」,真的要革了「海马体」们的命了?|手把手教你搭建「妙鸭相机」

    年初由ChatGPT引发的AI浪潮奔涌至今,除了OpenAI推出的当红炸子鸡之外,中文互联网内热度最高的产品,非前段时间霸屏的「妙鸭相机」莫属了。...只要上传20张自己的自拍照,就可以拥有一个专属的数字分身。用户只用挑选自己喜爱的写真模板,就可以得到一张张专业质感的写真。...由国内一个团队推出的EasyPhoto,就瞄准了这个痛点,在Github上开源了一个由Stable Diffusion作为基础,开源且支持本地化部署的「妙鸭相机」。...使用指南 模型训练 EasyPhoto训练界面如下: 左边是训练图像,只需点击上传照片即可上传图片,点击清除照片即可删除上传的图片; 右边是训练参数,不能为第一次训练进行调整。...b.第二次扩散: 在得到第一次扩散的结果后,将把该结果与最佳用户图像进行人脸融合,然后再次使用Stable Diffusion与用户的数字二重身进行生成。第二次生成将使用更高的分辨率。

    1.5K31

    关于React18更新的几个新功能,你需要了解下

    Facebook 团队已经发布了 React-18 。React 18 提供了许多开箱即用的功能。这些不仅增强了用户体验,而且使开发人员的生活更轻松。其中,有三个主要功能值得大家关注与学习了解。...例如,这可确保在提交时禁用的表单不能被提交两次。 如果我不想批处理怎么办? 通常,批处理是安全的,但某些代码可能依赖于在状态更改后立即从 DOM 中读取某些内容。...这解决了什么问题? 构建流畅且响应迅速的应用程序并不总是那么容易。有时,诸如单击按钮或输入输入之类的小动作可能会导致屏幕上发生很多事情。这可能会导致页面在所有工作完成时冻结或挂起。...=> { setSearchQuery ( input ) ; } , 0 ) ; 这将延迟第二次更新,直到呈现第一次更新之后。...我可以在哪里使用它? 您可以使用startTransition来包装要移动到后台的任何更新。

    9K50

    鼠标双击响应的实现「建议收藏」

    大家好,又见面了,我是你们的朋友全栈君。...今天在实现鼠标双击响应的时候,遇到了一些问题,下面是对我很有帮助的解释: 首先对鼠标双击事件原理做一个简单的了解: 在Windows平台上,鼠标左键的按下、松开、快速的两次点击会产生WM_LBUTTONDOWN...更准确的说法是这样的,两次单击会产生四个鼠标点击消息,如果第三个消息(第二次按下)和第二个消息(第一次弹起引发的WM_LBUTTONUP)间隔短于指定值,则把第三个消息处理成WM_LBUTTONDBLCLK...(2)两次鼠标击点的空间距离 在第一次点击时,Windows以击点为中心,检测一个矩形区域,如果第二次点击不落在这个区域内,那就不把第三个消息算作WM_LBUTTONDBLCLK消息。...开发中常见的一个错误是这样的:在处理第一个消息WM_LBUTTONDOWN或者WM_LBUTTONUP时,通过SetCapture捕获后续的鼠标消息,转发到别的窗口,导致原窗口不能识别双击,而这个双击可能正是期望的

    1.5K20

    关于React18更新的几个新功能,你需要了解下

    它还可以防止你的组件呈现仅更新一个状态变量的“半完成”状态,这可能会导致错误。 这可能会让你想起餐厅服务员在你选择第一道菜时不会跑到厨房,而是等你完成订单。 然而,React 的批量更新时间并不一致。...例如,这可确保在提交时禁用的表单不能被提交两次。 如果我不想批处理怎么办? 通常,批处理是安全的,但某些代码可能依赖于在状态更改后立即从 DOM 中读取某些内容。...这解决了什么问题? 构建流畅且响应迅速的应用程序并不总是那么容易。有时,诸如单击按钮或输入输入之类的小动作可能会导致屏幕上发生很多事情。这可能会导致页面在所有工作完成时冻结或挂起。...=> { setSearchQuery ( input ) ; } , 0 ) ; 这将延迟第二次更新,直到呈现第一次更新之后。...我可以在哪里使用它? 您可以使用startTransition来包装要移动到后台的任何更新。

    8.5K30

    tomcat里面的文件详细说明

    jakarta-tomcat-5.5.7.exe是可执行的安装程序,读者只需要双击这个文件,就可以开始安装Tomcat了。在安装过程中,安装程序会自动搜寻JDK和JRE的位置。...jakarta-tomcat-5.5.7.zip是一个压缩包,只需要将它解压到硬盘上就可以了。...笔者第一次配置 Tomcat时,就是根据错误提示信息一步一步配置成功的。很多人一看见错误信息,立即单击“确定”按钮,这样就错过了提示信息。...在Windows 2000操作系统下设置环境变量的步骤如下。 ① 在桌面“我的电脑”上单击右键,选择“属性”,出现如图5-4所示的画面。...图5-4 “我的电脑”属性 ② 单击“高级”选项卡,选择“环境变量( E )…”,如图5-5和图5-6所示。

    1.7K100

    OCX 入门

    ②介绍一下默认添加的三个基本类: CMyActiveXApp: 提供了控件类的初始化(InitInstance)和销毁代码(ExitInstance)。...④为Dialog创建对应的类: 1)右键单击对话框视图(不要点到某个具体控件),选择”添加类” 2)自定义类名,我的叫CMyDialog,注意其对话框ID与IDD_MYDIALOG对应,单击”完成” 3...)vs2005会自动为你添加基本的代码 ⑤为类添加成员变量 (一)为对话框类创建实例变量 1)在基本类CMyActiveXCtrl中为刚刚新建的对话框类创建实例变量:在类视图中右键单击CMyActiveXCtrl...(二)为对话框中的控件创建实例变量 1)以”确定”按钮为例,在该按钮处单击右键,选择”添加变量” 2)自定义变量名,我的叫m_OKButton。...”,把这个文件解压缩以后,在下面的目录可以找到TSTCON32.exe的源代码:“C++\MFC\ole\TstCon”,自己编译就可以了。

    4.5K60

    Oracle的安装与配置

    讲完什么是Oracle以及它的好处后,接下来我来讲讲如何在Windows操作系统上安装Oracle。...因为我已经创建了orcl全剧数据库了,不能重复,所以我用其他的名称,即使但你输入口令后会提示你输入的口令不符合标准,我们也忽略,点击确认就行了。...安装的时候有点慢,我们就可以让他自己安装,出现错误信息,全部忽略,全选是。...安装好补丁后我们需要配置系统的环境变量 如图所示: TNS_ADMIN是变量名 变量值是你的databse安装目录中 tnsnames.ora文件的路径 上面选中的是用来防止...选中你的全局数据库,单击命令会出现下图: 首先我们点击更改登录,因为他默认是scott,但是scott一开始是被锁定的,不能用来登录,所以我们选择system,密码就是之前安装databse时输入的口令

    1.4K40

    vs2010装不了sp1补丁_vs2015没有win32控制台

    大家好,又见面了,我是你们的朋友全栈君。 我第一次安装这个补丁的时候就挂了,搞得VS2005和相关的一些程序都不能运行,后来在网上找到了一些解决方法,结合自己的实际体验,写了这篇教程。...-mode: char; line-height: 120%”> 安装失败后的补救措施: 不能成功安装SP1,错误代码2908,然后VS2005就挂了,我是在第一次安装SP1提示空间不足,然后再次安装...我安装这个版本的sp1时也出现了这个问题(指错误代码:2908).不只是我的VS2005 Team System 挂掉了,而且.NET 2.0 Framework一样不能使用,包括IIS和应用程序,MSN...我试着卸载vs2005,但是我再次安装vs2005时,在安装过程中又出现了一个错误。 这个是在网上找到的解决方法,其参考链接是一个英文论坛: 1. 删除VS2005 2....这里补充以下,在卸载了VS2005后,有很多VS2005附带的组件是没有卸载的,那些组件都不需要卸载,之要卸载再卸载.NET FRAMEWORK 2.0就可以了。

    1.1K30
    领券