上一页 1 2 3 4 5 6 7 ··· 9 下一页
摘要: 我拎着刚买的LEVI'S从茂业出来,站在门口等一个朋友,一个职业乞丐发现了我. “先生......行行好,给点吧!”我一时无聊在口袋找出一个硬币扔给他并攀谈起来。“ 我只在华强北一带乞讨,你知道吗?我一扫眼就见到你,在茂业买LEVI’S,一定舍得花钱......"“哦?你懂的蛮多嘛!”我很惊讶。“做乞丐,也要用科学的方法。”我一愣,“什么科学的方法?”“你先看看我和其他的乞丐有什么不同的地方?”我仔细打量乞丐:头发很乱、衣服很破、手很瘦,但都不脏。乞丐打断我的思考,说:“人们对乞丐都很反感,但我相信你对我并没有反感,这点我看得出来,这就是我与其他乞丐的不同之处。”我点头默认,确实不反 阅读全文
posted @ 2012-09-06 23:37 乌托邦. 阅读(910) 评论(0) 推荐(0) 编辑
摘要: 网络层的TCP/UDP协议的区别就不说了。在用UDP进行编程时,应用层要对报文大小进行控制,因为对于上层传过来的报文,UDP是既不做合并又不做拆分的TCP协议为了提高网络利用效率,给发送方和接收方都定义了一个滑动窗口用来根据不同的网络拥塞状况对应的拥塞窗口来调整滑动窗口的大小(不同的网络对应不同的门限值)从而来调整发送接收速率。 阅读全文
posted @ 2012-09-06 23:30 乌托邦. 阅读(125) 评论(0) 推荐(0) 编辑
摘要: TabHost控件和其它控件不同的是,在用ID获取后还必须调用setup()函数后才能使用控件tabhost=(TabHost)findViewById(R.id.tabhost);tabhost.setup();Tab内容是在XML布局文件里面设计好的,然后用一个映射器映射到Activity里面来LayoutInflaterll;ll=this.getLayoutInflater(); //使用布局文件创建一个View Viewv1=ll.inflate(R.layout.tabmenu,null);//这里在写的时候遇到了一个很有意思的空指针报错,从报错中才发现然来findViewById 阅读全文
posted @ 2012-09-06 00:12 乌托邦. 阅读(724) 评论(0) 推荐(0) 编辑
摘要: 从别处看到的一篇很不错的文章,形象地阐释了网络里的抽象概念。一篇故事讲述了计算机网络里的基本概念:网关,DHCP,IP寻址,ARP欺骗,路由,DDOS等计算机主机网关的作用是什么?假设你的名字叫小不点,你住在一个大院子里,你的邻居有很多小伙伴,在门口传达室还有个看大门的李大爷,李大爷就是你的网关。当你想跟院子里的某个小伙伴玩,只要你在院子里大喊一声他的名字,他听到了就会回应你,并且跑出来跟你玩。但是你不被允许走出大门,你想与外界发生的一切联系,都必须由门口的李大爷(网关)用电话帮助你联系。假如你想找你的同学小明聊天,小明家住在很远的另外一个院子里,他家的院子里也有一个看门的王大爷(小明的网关) 阅读全文
posted @ 2012-09-05 22:31 乌托邦. 阅读(377) 评论(0) 推荐(0) 编辑
摘要: 设置全屏显示://去除标题栏this.requestWindowFeature(Window.FEATURE_NO_TITLE);//覆盖通知栏this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);还可以在项目配置文件里面添加:android:theme="@android:style/Theme.NoTitleBar"或android:theme="@android:style/Theme. 阅读全文
posted @ 2012-09-04 23:55 乌托邦. 阅读(1963) 评论(0) 推荐(0) 编辑
摘要: 集线器:其实就相当于一个公共线路,只是扩大了CSMA/CD协议的碰状域交换机:其实就是一种高端的网桥网桥:可以用来连接数据链路层及以下层结构不同的网络,根据目的地址向不同的端口进行数据帧的转发前三种都是工作在数据链路层的路由器:路由寻址、屏蔽广播风暴,工作在网络层。多播:支持多播的硬件的MAC地址是有特殊要求的,硬件MAC地址的前25位固定,后23位和D类IP地址的后23位地址相同主机号全1为广播地址网络号全0和全1为保留地址 阅读全文
posted @ 2012-09-03 22:52 乌托邦. 阅读(118) 评论(0) 推荐(0) 编辑
摘要: Android菜单有两种:1、 选项菜单(OptionsMenu)在Activity里面重写onCreateOptionsMenu(Menu menu)方法,然后有两种方式可以来添加菜单⑴、直接在代码里面添加public boolean onCreateOptionsMenu(Menu menu) { {// 代码添加菜单项 // add(int groupId, int itemId, int order, CharSequence title) // groupId:组ID; // itemId: itemID; ... 阅读全文
posted @ 2012-09-03 18:20 乌托邦. 阅读(438) 评论(0) 推荐(0) 编辑
摘要: 从写QQ的过程中来看,网络编程最重要的还是得设计好自己的协议,不要出现冗余数据也不要少了必要的数据。在数据的读写过程中一定要把网络中的数据流读干净,无论这些数据是否有用,不然就影响到后续的数据片段读取的开始结束及数据的类型读写错误。一定要做好Socket断开的处理,处理的过程中尽量不要调用Thread的中断、停止之类的函数,很危险。而是让这些进程自己break跳出循环,正常结束自己的生命周期 阅读全文
posted @ 2012-09-02 23:32 乌托邦. 阅读(140) 评论(0) 推荐(0) 编辑
摘要: Android里面的界面的修改,不能直接用一个Thread的方法体来修改。每个Activity都有一个系统主线程一直在循环监听该界面数据是否有什么变化。如果直接新建一个线程来修改界面就会造成多个线程不同步的现象,因此Android引入了Handler来处理多线程对界面进行的操作,个人理解Handler就相当于一个消息池,一旦有界面改变的消息就发送给系统界面主线程让其进行处理。Handler对界面修改的消息处理大概有这么两种方式:1、新建一个Runnable对象,但是Runnable()对象里面不要死循环,而是在主线程体里面用死循环来不断的监视界面变化,并用Handler对象来发送该消息 ... 阅读全文
posted @ 2012-09-02 23:28 乌托邦. 阅读(788) 评论(0) 推荐(0) 编辑
摘要: weight值越小权重越高,优先满足小权重的控件的布局 android:layout_alignBottom="@id/main_iv_01" android:layout_alignRight="@id/main_iv_01" android:layout_alignTop="" android:layout_alignLeft=""这四个相对布局是对应id指向的控件的四个内边界的相对位置而与之对应的 android:layout_toRightOf="@id/main_iv_01" andr 阅读全文
posted @ 2012-08-30 20:48 乌托邦. 阅读(164) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 ··· 9 下一页