上一页 1 ··· 3 4 5 6 7 8 9 10 11 ··· 27 下一页
摘要: Android:gravity属性 线性布局常见的就是利用LinearLayout进行布局,其中有个比较重要的属性就是android:gravity,在官方文档中是这么描述这个属性的:指定一个元素怎么放置它的内容,包括在X和Y轴,在它自己的边框中。下面我们将在一个简单的TextView中应用android:gravity属性。假设我们想要TextView内的内容在右侧显示,那么我们就可以编写对应的XML布局 效果如下图盒模型为了更加准确地控制TextView里面内容的位置,我们可以使用一系列的padding属性来控制。在使用padding属性之前,先科普一下padding和Marigin... 阅读全文
posted @ 2013-09-09 08:05 陈哈哈 阅读(26644) 评论(2) 推荐(5) 编辑
摘要: 在Android手机的诞生之初,由于Android系统是开源的,一开始便有众多的OEM厂商对Android手机进行深度定制,于是乎Android手机的皮肤和屏幕大小都变得百花齐放,这可苦逼了我们这群开发者,因为我们被要求要注意写出一个好的Android软件,写一次代码就能适应大小不同的屏幕。这就好比,你做了一套衣服,要让不同身材的人都穿得合身,类似于生活中的道理,我们这套衣服肯定不能用没有弹性的布料,所以我们要像生活中那种无尺码,有弹性的衣服学习,在代码里面尽量让界面能够自动适应屏幕的大小,幸好Android操作系统提供了一些这方面的屏幕适应机制。 屏幕上的图案最终就是由一个个的点构成的... 阅读全文
posted @ 2013-09-07 10:46 陈哈哈 阅读(1658) 评论(2) 推荐(0) 编辑
摘要: D:\我的文档\workspace\PrepareForExam\src>javah -classpath D:\我的文档\workspace\ PrepareForExam\src\com\example\myclass -d d:/ -jni com.example.myclass.jni_test 错误:无法访问 com.example.myclass.jni_test 未找到 com.example.myclass.jni_test 的类文件 javadoc: 错误 - 找不到类 com.example.myclass.jni_test。 Err... 阅读全文
posted @ 2013-09-03 15:49 陈哈哈 阅读(28300) 评论(4) 推荐(7) 编辑
摘要: 以前,当我们点击了一个按钮,向服务器请求数据的时候,通常会有这么一个流程。浏览器向服务器发送Http请求→服务器返回整个页面→浏览器将原先的整个页面替换成新的页面。这样子做当然没有什么问题,但是比如在看土豆的视频的时候,想看一下下方的评论,不过瘾,想再看下一页的评论,这时候浏览器会向服务器发请求,要是正在看视频的时候整个页面重新加载,视频重加载一次,那简直不可饶恕。所以就产生了Ajax这种技术,用来进行页面的局部刷新,省的每次更新界面都得重新下载一个完整的界面。Ajax(Asynchronous JavaScript and XML,异步JavaScript和XML)是一种进行页面局部异步刷新 阅读全文
posted @ 2013-09-01 11:34 陈哈哈 阅读(570) 评论(0) 推荐(0) 编辑
摘要: 反射到底有什么用? 以前,假设我们要不借助任何类库直接解析Json协议的东西,比如{“a”:"A","b":"B","c":"C"},并且我们需要将他们赋给一个与之对应的实体类。那么我们需要写出如下的代码来解析 //这只是一段伪代码 while(str.Length!=0){//在一个大的while里面遍历整个字符串//这里省去解析的函数//用判断读到的名称,然后对应相应的属性进行初始化... 阅读全文
posted @ 2013-08-31 15:26 陈哈哈 阅读(1629) 评论(0) 推荐(0) 编辑
摘要: 1.与Java不同,C#中的接口不能包含字段(Field)。在java中,接口中可以包含字段,但是这些字段隐式地是static和final的。而C#不允许接口中有字段,编译器在编译时就会提示错误(如下代码所示)。interface IInterface { int a ;//编译器错误提示:接口不能包含字段 }2、在C#和Java中,接口内的所有方法默认都是公用方法。在Java中,方法声明可以带有public修饰符(即使这并非必要),但在C#中,显式地为接口中的方法指定public修饰符是非法的。例如,下面的代码将产生一个编译错误。 inter... 阅读全文
posted @ 2013-08-30 16:41 陈哈哈 阅读(6302) 评论(1) 推荐(4) 编辑
摘要: 备忘录模式其实就是给我们的应用程序一次撤销的机会。使用过word的人肯定会知道伟大的“Ctrl+Z”,用过PS的人更是不会忘记,应该来说基本上所有的带编辑功能的软件毫无例外都提供了撤销的功能,撤销功能给了我们1次或N次返回的机会,准确地说应该是恢复之前状态的机会。我们自己开发的软件有时候有需要撤销的功能,比如在网络通信中,常常会因为不可预知的错误就导致程序出错,这时候,要是能恢复到上一个正确的状态就太好了,这样可以省去不上功夫。我们今天要讨论的备忘录模式就是用来解决这个问题的。经典的备忘录模式如下图所示:注:本图来自《设计模式_基于C#的工程化实现及扩展》 首先,还是让我来解释一下这幅图的意思 阅读全文
posted @ 2013-08-29 09:34 陈哈哈 阅读(2790) 评论(0) 推荐(1) 编辑
摘要: 在很多种情况下,我们都必须对字符串进行匹配,以便判断字符串的格式是否符合要求,对字符串中的内容进行提取。比如,我要从一段话aabdfe中,判断这段话是否有包含ab这个词,那么如果用if-else来判断的话,那么我们必须遍历整个字符串,当遇到一个a,记录一下状态,判断下一个是否是所要的b。这个过程随着要判断的内容(在这里是ab)和要被字符串的长度的增长,恶心程度递增。但是又因为字符串的判断实在是太常要用到啦,所以就有了正则表达式这么个东西,正则表达式其实就是一个字符串识别的规则,通过这个规则,我们就可以让程序根据这个规则去识别了。在Java里面使用正则表达式需要涉及到两个Pattern和Mat. 阅读全文
posted @ 2013-08-28 14:59 陈哈哈 阅读(24328) 评论(1) 推荐(3) 编辑
摘要: 在典型的网络通信处理软件里面(比如QQ),我们常常需要在接收到一条消息的时候,对消息进行解码、将消息写入日志文件(以便后面排查问题)、将消息写到某个界面上(如下面代码所示)。也就是说,我们一共需要通知三个不同的对象,我们收到了一条消息。这代码看着总觉得有点多余,为什么要连续写三次差不了多少的函数调用呢?所以观察者模式就是用来解决这个问题的,应用观察者模式,我们可以实现对多个观察者的通知(其实就是调... 阅读全文
posted @ 2013-08-28 11:08 陈哈哈 阅读(387) 评论(0) 推荐(0) 编辑
摘要: 假设某人一整天的流程就是“吃饭→工作→睡觉”,并且他要严格按照这个流程来,那也就是说在吃饭状态下,他只能做跟吃饭有关的事情,而不能越界做工作或者睡觉有关的事情,这就涉及到了状态的管理。在写代码的时候,我们常常要根据当前的状态,来决定下一个状态并且确定当前状态下要做什么样的事情。一般来讲,我们会写一系列的if-else if-else if-else语句来实现,但是要是状态非常多的时候,这种代码不仅... 阅读全文
posted @ 2013-08-27 19:49 陈哈哈 阅读(368) 评论(0) 推荐(0) 编辑
上一页 1 ··· 3 4 5 6 7 8 9 10 11 ··· 27 下一页