<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[张栋的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/DooneZhang</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; DooneZhang]]></copyright><item><title><![CDATA[UWP中Textbox和Passwordbox实现文字居中效果]]></title><link>https://blog.youkuaiyun.com/DooneZhang/article/details/121605549</link><guid>https://blog.youkuaiyun.com/DooneZhang/article/details/121605549</guid><author>DooneZhang</author><pubDate>Mon, 29 Nov 2021 11:51:45 +0800</pubDate><description><![CDATA[UWP中Textbox和Passwordbox实现文字居中效果
1. 问题描述：
在UWP开发中，Textbox和Passwordbox的默认样式是左上角对其的方式，虽然Textbox可以通过添加TextAlignment="Center"属性实现水平居中，但是垂直居中仍然没有办法通过自带的属性实现，例如下图显示的是默认左上样式，而有时我们需要自定义样式，比如修改成水平垂直居中对齐，那应该怎么修改呢？

2. 解决方案：
通过创建控件模版来自定义自己需要的样式，具体步骤如下：
1、在试图设计界面或者blen]]></description><category></category></item><item><title><![CDATA[基于php+mysql的c2c交易平台系统]]></title><link>https://blog.youkuaiyun.com/DooneZhang/article/details/120484567</link><guid>https://blog.youkuaiyun.com/DooneZhang/article/details/120484567</guid><author>DooneZhang</author><pubDate>Sun, 26 Sep 2021 12:00:24 +0800</pubDate><description><![CDATA[基于php+mysql的c2c交易平台系统功能介绍安装方式截图下载地址
去年帮同学改的毕业设计，现在用完了发上来提供给需要的小伙伴参考借鉴，这个原本也是我从网上找来的一个二手交易平台的源码二次魔改后的，网上基本都是b2b或者b2c模式的，很难找到类似闲鱼那种个人对个人的交易平台源码，这个我都是找了好久的一个远古级源码，不过好在还能运行，我还增加了一些其他功能，大家可以根据自己的情况重新修改，可以用在二手交易平台、游戏道具、虚拟商品、网店、交友平台、宠物等一类c2c模式的平台中。
功能介绍
本系统是前台利用p]]></description><category></category></item><item><title><![CDATA[CentOS密码正确却出现login incorrect的解决办法]]></title><link>https://blog.youkuaiyun.com/DooneZhang/article/details/112610292</link><guid>https://blog.youkuaiyun.com/DooneZhang/article/details/112610292</guid><author>DooneZhang</author><pubDate>Thu, 14 Jan 2021 15:03:57 +0800</pubDate><description><![CDATA[CentOS密码正确却出现login incorrect的解决办法1、问题描述2、问题分析3、解决办法
1、问题描述
centos 6.5 上次登陆就出现密码正确却反复失败的问题，过了一天自己不知道怎么又好了，担心时密码设置的太复杂，就赶快改成了最简单的123456，就没有再多做研究，这次登陆明明是最简单的123456又出现了login incorrect的问题，数字键盘锁也检查了还是没有用，随后百度查好了方法。
2、问题分析
由于是通过EXSI远程登陆虚拟机出现的问题，可能是由于键盘锁或者没有远程响应键盘]]></description><category></category></item><item><title><![CDATA[Android系统架构]]></title><link>https://blog.youkuaiyun.com/DooneZhang/article/details/112131107</link><guid>https://blog.youkuaiyun.com/DooneZhang/article/details/112131107</guid><author>DooneZhang</author><pubDate>Mon, 04 Jan 2021 00:44:49 +0800</pubDate><description><![CDATA[Android系统架构分为四层五部分，如下图所示：



从上层到下层分别是应用程序层、应用程序框架层、系统运行库层（Android运行时）以及Linux内核层，分别介绍如下：

 1）Application（应用程序层）

    应用程序层是与用户关系最密切直接的一层，在这一层包含了许多应用程序，诸如SMS短信客户端程序、电话拨号程序、图片浏览器、Web浏览器等应用程序，还有我们编写的软件也在这一层。这些应用程序都是用Java语言编写的，并且这些应用程序都是可以被开发人员开发的其他应用程...]]></description><category></category></item><item><title><![CDATA[Android核心组成部分之Dalvik虚拟机简单介绍]]></title><link>https://blog.youkuaiyun.com/DooneZhang/article/details/112131104</link><guid>https://blog.youkuaiyun.com/DooneZhang/article/details/112131104</guid><author>DooneZhang</author><pubDate>Mon, 04 Jan 2021 00:44:11 +0800</pubDate><description><![CDATA[1 、Dalvik虚拟机介绍

　　Dalvik是Google公司自己设计用于Android平台的Java虚拟机，它是Android平台的重要组成部分，支持dex格式（Dalvik Executable）的Java应用程序的运行。dex格式是专门为Dalvik设计的一种压缩格式，适合内存和处理器速度有限的系统。Google对其进行了特定的优化，使得Dalvik具有高效、简洁、节省资源的特点。从Android系统架构图知，Dalvik虚拟机运行在Android的运行时库层。

2、 Dalvik虚拟机的功能
]]></description><category></category></item><item><title><![CDATA[Android运行环境Dalvik模式和ART模式的区别对比]]></title><link>https://blog.youkuaiyun.com/DooneZhang/article/details/112131102</link><guid>https://blog.youkuaiyun.com/DooneZhang/article/details/112131102</guid><author>DooneZhang</author><pubDate>Sun, 03 Jan 2021 02:25:58 +0800</pubDate><description><![CDATA[Android系统是以Linux系统为底层构建的，开源的Android系统需要配置到不同硬件配置的设备上，为了降低应用的开发难度，在Linux底层之上构筑了一个名为"Dalvik"的虚拟机，名为虚拟机，实际是一种应用编译模式，Android4.4开始引入的ART模式是一种全新的应用编译模式，Android5.0彻底从Dalvik转换到ART。

1、介绍：

Dalvik模式：

Dalvik是Google公司自己设计用于Android平台的Java虚拟机，Dalvik虚拟机是Google等厂商合作开发的A]]></description><category></category></item><item><title><![CDATA[浅谈B/S和C/S结构的区别和联系]]></title><link>https://blog.youkuaiyun.com/DooneZhang/article/details/112131099</link><guid>https://blog.youkuaiyun.com/DooneZhang/article/details/112131099</guid><author>DooneZhang</author><pubDate>Sun, 03 Jan 2021 02:25:06 +0800</pubDate><description><![CDATA[经常看到B/S和C/S相关的问题，从前只知道B/S比C/S结构运用场景更加多，适用于一般用户使用，但对于两种结构的详细知识不是很了解，所以这次专门去了解学习，做一个简单整理，以便自己以后复习查看和更新，本文主要以对比的形式展开。

简介：

B/S结构（Browser/Server，浏览器/服务器模式）




简单来说，就是客户机上只需要有操作系统和浏览器，利用现代成熟浏览器的多种脚本语言和ActiveX技术，用户完全通过WWW浏览器就可以实现各种上网和其他功能，B/S结构使一部分事务逻辑在...]]></description><category></category></item><item><title><![CDATA[Unknown host ‘XXXX: nodename nor servname provided, or not known‘. You may need to adjust the proxy]]></title><link>https://blog.youkuaiyun.com/DooneZhang/article/details/112131097</link><guid>https://blog.youkuaiyun.com/DooneZhang/article/details/112131097</guid><author>DooneZhang</author><pubDate>Sun, 03 Jan 2021 02:24:22 +0800</pubDate><description><![CDATA[问题描述：

mac版本Android Studio新建项目时候出现报错：

Unknown host 'XXXX: nodename nor servname provided, or not known'. You may need to adjust the proxy settings in Gradle.

未知的主机xxxx:提供的节点名和服务器名不知道的。您可能需要在Gradle中调整代理设置。



查看了下是4.4-all的Gradle,



解决方案：

百度后发现说要自己下载Grad]]></description><category></category></item><item><title><![CDATA[Android之四大组件]]></title><link>https://blog.youkuaiyun.com/DooneZhang/article/details/112131096</link><guid>https://blog.youkuaiyun.com/DooneZhang/article/details/112131096</guid><author>DooneZhang</author><pubDate>Sun, 03 Jan 2021 02:23:26 +0800</pubDate><description><![CDATA[Android四大基本组件：Activity、BroadcastReceiver广播接收器、ContentProvider内容提供者、Service服务。

Activity:

应用程序中，一个Activity就相当于手机屏幕，它是一种可以包含用户界面的组件，主要用于和用户进行交互。一个应用程序可以包含许多活动，比如事件的点击，一般都会触发一个新的Activity。

BroadcastReceiver广播接收器：

应用可以使用它对外部事件进行过滤只对感兴趣的外部事件(如当电话呼入时，或者数据网络可用.]]></description><category></category></item><item><title><![CDATA[Android三种网络通讯机制介绍及区别]]></title><link>https://blog.youkuaiyun.com/DooneZhang/article/details/112131095</link><guid>https://blog.youkuaiyun.com/DooneZhang/article/details/112131095</guid><author>DooneZhang</author><pubDate>Sun, 03 Jan 2021 02:22:33 +0800</pubDate><description><![CDATA[一、介绍

1、标准Java接口

java.net.*提供与联网有关的类，包括流、数据包套接字(socket)、Internet协议、常见Http处理等。
比如：创建URL，以及URLConnection/HttpURLConnection对象、设置链接参数、链接到服务器、向服务器写数据、从服务器读取数据等通信。

HttpURLConnection

HttpURLConnection在java.NET下，继承自URLConnection类，相对于HttpClient具有扩展性高、灵活性高，更轻量级的.]]></description><category></category></item><item><title><![CDATA[面向对象设计的八大基本原则]]></title><link>https://blog.youkuaiyun.com/DooneZhang/article/details/112131094</link><guid>https://blog.youkuaiyun.com/DooneZhang/article/details/112131094</guid><author>DooneZhang</author><pubDate>Sun, 03 Jan 2021 02:21:37 +0800</pubDate><description><![CDATA[面向对象设计的八大基本原则

1. 单一职责原则（Single Responsibility Principle）

每一个类应该专注于做一件事情。

2. 里氏替换原则（Liskov Substitution Principle）

超类存在的地方，子类是可以替换的。

3. 依赖倒置原则（Dependence Inversion Principle）

实现尽量依赖抽象，不依赖具体实现。

4. 接口隔离原则（Interface Segregation Principle）

应当为客户端提供尽可能小的]]></description><category></category></item><item><title><![CDATA[UWP开发中Binding配合Converter的使用]]></title><link>https://blog.youkuaiyun.com/DooneZhang/article/details/112131093</link><guid>https://blog.youkuaiyun.com/DooneZhang/article/details/112131093</guid><author>DooneZhang</author><pubDate>Sun, 03 Jan 2021 02:20:10 +0800</pubDate><description><![CDATA[UWP开发中Binding配合Converter的使用

MVVM模式的使用，简化了UWP应用的开发，使层次更加分明。在写xaml的时候，有些小技术还是很实用的；比如Converter，字面上理解是转换器，那它到底是转换什么的？接触过的可能知道它起的是类型转换的作用，当你绑定的数据是一堆字母，显示时却想将它变成汉字，一种做法可以在数据绑定前将这些数据转换成需要的文字，另一种做法就是使用Converter。

它有两个好处：

1，保持原始数据的完整性，不破坏原有数据结构。

2，可以复用，别的地方需要直接将]]></description><category></category></item><item><title><![CDATA[Android中Activity的四种启动方式]]></title><link>https://blog.youkuaiyun.com/DooneZhang/article/details/112131092</link><guid>https://blog.youkuaiyun.com/DooneZhang/article/details/112131092</guid><author>DooneZhang</author><pubDate>Sun, 03 Jan 2021 02:19:10 +0800</pubDate><description><![CDATA[Android中Activity的四种启动方式

Activity的启动模式分为四种。（standard、singleTop、singTask、singleInstance）;
启动模式可在AndroidManifest.xml中，通过&lt;activity&gt;标签的android:launchMode属性设置。

一、standard模式
特点：1.Activity的默认启动模式
2.每启动一个Activity就会在栈顶创建一个新的实例。例如：闹钟程序
缺...]]></description><category></category></item><item><title><![CDATA[Android 开发中 getContext 和 getActivity的区别]]></title><link>https://blog.youkuaiyun.com/DooneZhang/article/details/112131090</link><guid>https://blog.youkuaiyun.com/DooneZhang/article/details/112131090</guid><author>DooneZhang</author><pubDate>Sun, 03 Jan 2021 02:18:22 +0800</pubDate><description><![CDATA[Android 开发中 getContext 和 getActivity的区别


	MainActivity.this：表示MainActivity对象，一般用在内部类中指示外面的this，如果在内部类直接用this，指示的是内部类本身。因为MainActivity继承Activity，而Activity继承Context，所以它也可以用来提供Activity Context；
	
	
	this：表示当前对象；一般而言，在哪个类中调用，就是指向该对象。
	
	
	getContext()：这个是View]]></description><category></category></item><item><title><![CDATA[UWP自定义ToggleButton控件的样式]]></title><link>https://blog.youkuaiyun.com/DooneZhang/article/details/112131085</link><guid>https://blog.youkuaiyun.com/DooneZhang/article/details/112131085</guid><author>DooneZhang</author><pubDate>Sun, 03 Jan 2021 02:15:56 +0800</pubDate><description><![CDATA[UWP自定义ToggleButton控件的样式

一般来讲，UWP自带控件的样式足够我们使用，但是如果我们想要更具自己的需求修改样式因该怎么做呢？下面就以实例简单示范一下。

需求是这样的，我们需要做一个类似抖音点赞的按钮，没有点赞前是空心爱心，点赞后变成实心红心，如果我们使用默认样式，做出来的效果会是这样的：

代码：


 &lt;!--未点赞前为白色空心--&gt;
&lt;ToggleButton Content="&amp;#xE006;" Background="Transparent" Fon]]></description><category></category></item></channel></rss>