本文介绍一种点击空白处使控件隐藏的实现方法。 问题描述 考虑如下场景,在白板类软件中,点击按钮弹出一个View,希望在点击空白处直接隐藏掉View,同时可以直接书写,如下图: 实现该需求,可以通过View间通信解决,但这样会增加代码耦合且使逻辑显得复杂。 本文通过派生UserControl,将处理逻 ...
LVS原理与实现 - 原理篇 LVS,全称 Linux Virtual Server,是章文嵩博士发起的一个开源项目。在社区具有很大的热度,是一个基于四层、性能极高的反向代理服务器。至于什么是反向代理,这里就不作详细介绍了,如果不了解可以先去阅读反向代理相关的资料。 LVS工作原理 下面先介绍一下 ...
分类:
其他好文 时间:
2021-06-28 17:43:07
阅读次数:
0
LVS原理与实现 - 实现篇 在上一篇文章中,我们主要介绍了 LVS 的原理,接下来我们将会介绍 LVS 的代码实现。 本文使用的内核版本是:2.4.23,而 LVS 的代码在路径:/src/net/ipv4/ipvs 中。 Netfilter 在介绍 LVS 的实现前,我们需要了解以下 Netfi ...
分类:
其他好文 时间:
2021-06-28 17:42:21
阅读次数:
0
TCP源码分析 - 三次握手之 connect 过程 本文主要分析 TCP 协议的实现,但由于 TCP 协议比较复杂,所以分几篇文章进行分析,这篇主要介绍 TCP 协议建立连接时的三次握手过程。 TCP 协议应该是 TCP/IP 协议栈中最为复杂的一个协议(没有之一),TCP 协议的复杂性来源于其面 ...
分类:
其他好文 时间:
2021-06-28 17:41:33
阅读次数:
0
主题交换机,这个交换机其实跟直连交换机流程差不多,但是它的特点就是在它的路由键和绑定键之间是有规则的。 简单地介绍下规则: * (星号) 用来表示一个单词 (必须出现的) # (井号) 用来表示任意数量(零个或多个)单词 通配的绑定键是跟队列进行绑定的,例: 队列Q1 绑定键为 .TT. 队列Q2绑 ...
分类:
其他好文 时间:
2021-06-25 17:23:14
阅读次数:
0
1.什么是线程? 进程作为操作系统执行程序的基本单位,拥有应用程序的资源,进程包含线程,进程的资源被线程共享,线程不拥有资源。 2.前台线程和后台线程的区别? 程序关闭时,后台线程直接关闭,但前台线程会执行完后关闭。 通过Thread类新建线程默认为前台线程。其他方式创建的都是后台线程。 多线程的几 ...
分类:
编程语言 时间:
2021-06-25 17:18:40
阅读次数:
0
伪代码贴上 @Override protected void onCreate(Bundle savedInstanceState) { mWebView = (WebView) findViewById(R.id.webview); //获得webView initWebView(); } pri ...
分类:
移动开发 时间:
2021-06-25 17:11:53
阅读次数:
0
字符串字面量 字符串字面量是指在表达式、条件语句、SQL函数,SQL语句中字符串的表示。一般情况下字符串是从一个单引号开始到一个单引号结束,但存在一些特殊情况,比如字符串本身含有单引号,这会让数据库误以为应该结束字符串而导致错误,或含有一些其他特殊字符。下面简单介绍Oracle数据库中字符串字面量如 ...
分类:
数据库 时间:
2021-06-25 17:10:34
阅读次数:
0
ApkToolPlus 是一个可视化的跨平台 apk 分析工具。 项目地址:https://github.com/linchaolong/ApkToolPlus 1. ApkTool apk 反编译,回编译,签名。 apktool 2. Apk 加固 dex 加密,防逆向,防止二次打包。(注意:该功 ...
分类:
移动开发 时间:
2021-06-25 17:10:01
阅读次数:
0
这是c++性能测试工具教程的第四篇文章,从本篇开始我将逐步介绍一些性能测试的高级技巧。 前三篇教程可以看这里: c++性能测试工具:google benchmark入门(一) c++性能测试工具:google benchmark入门(二) c++性能测试工具:计算算法的时间复杂度 本文将会介绍如何使 ...
分类:
编程语言 时间:
2021-06-25 17:07:50
阅读次数:
0