摘要:创建Fragment 要创建fragment,必须从Fragment或Fragment的派生类派生出一个类。Fragment的代码写起来有些像activity。它具有跟activity一样的回调方法,比如onCreate(),onStart(),onPause()和onStop()。实际上,如果你想把老的程序改为使用fragment,基本上只需要把activity的回调方法的代码移到fragment中对应的方法即可。通常需要实现以上生命周期函数:onCreate():当创建fragment时系统调用此方法。在其中你必须初始化fragment的基础组件们。可参考activity的说明。onCr.
阅读全文
摘要:1、Webkit内核这次又远远走在了前面。开源的Chromium和每日构建的力量是无穷的。2、Firefox、Opera等浏览器不久之后将会马上跟进,IE也一样。说到IE,其实IE是最早提出和支持类似滤镜效果的浏览器,早在IE 5.5的时代(还记得国悼日全灰色的网站是如何快捷实现的吗?),只是它糟透了的名声让人忘记了它的一切好处。Whatever,这次时光轮回又把一个强大和统一的规范带给了我们。3、CSS3的快捷滤镜使用起来相当方便,也很强大。参见演示页面(请用Chrome的最新版本观看)。4、《遇见CSS3滤镜》文中介绍的滤镜还不足以实现更加复杂的效果,例如Instagram的Poprock
阅读全文
摘要:Fragment是activity的界面中的一部分或一种行为。你可以把多个Fragment们组合到一个activity中来创建一个多面界面并且你可以在多个activity中重用一个Fragment。你可以把Fragment认为模块化的一段activity,它具有自己的生命周期,接收它自己的事件,并可以在activity运行时被添加或删除。Fragment不能独立存在,它必须嵌入到activity中,而且Fragment的生命周期直接受所在的activity的影响。例如:当activity暂停时,它拥有的所有的Fragment们都暂停了,当activity销毁时,它拥有的所有Fragment们都
阅读全文
摘要:MongoDB是一个高性能,开源,无模式的文档型数据库,是当前NoSql数据库中比较热门的一种。它在许多场景下可用于替代传统的关系型数据库或键/值存储方式。Mongo使用C++开发。以window平台为例。下载地址http://www.mongodb.org/downloads 安装:第一步:下载安装包:如果是win系统,注意是64位还是32位版本的,请选择正确的版本。第二步:新建目录“D:\MongoDB”,解压下载到的安装包,找到bin目录下面全部.exe文件,拷贝到刚创建的目录下。第三步:在“D:\MongoDB”目录下新建“data”文件夹,它将会作为数据存放的根文件夹。配置Mongo
阅读全文
摘要:处理系统配置变化很多设备可以在运行时改变系统配置,比如屏幕方向,键盘布局以及语言等。当类似的变化发生时,系统会把运行的activity重启(调用onDestroy(),然后调用onStart(),――哦~,没有调用onRestart()),如果你的activity能跟据这些变化做出相应的处理,那么你的程序将更稳定可爱。那么如何应付这些变化呢,最好的办法就是写好状态保存/恢复方法们。比如onSaveInstanceState(),onRestoreInstanceState()/onCreate()。对于系统配置改变的详细信息以及基体应对方法,请观“处理运行时配置变化”一节。协调activity
阅读全文
摘要:html 链接的颜色变化:a.html 文件如下:<html> <head> < title>Hello world< /title> <link rel="stylesheet" type="text/css" href="b.css" /> <!-- 用于和外部的css文件进行关联--> </head> <body> <a href="http://www.google.com">Google</a
阅读全文
摘要:java中TargetDataLine 接口提供从目标数据行的缓冲区读取所捕获数据的方法,SourceDataLine接口提供将音频数据写入数据行的缓冲区中的方法。如从音频捕获设备获取其数据的数据行。调用start方法开始执行操作。调用stop方法停止。package chat; import javax.swing.JTextArea;
/** * @author Hello * 把那几个sender、receiver又包装了一下,供GUI调用 */
public class Chat { private MessageReceiver massageReceiver; pr...
阅读全文
摘要:保存activity的状态在“acitvity的生命周期”一节中提到了当暂停和停止时,activity的状态是被保留在内存中的,当resume时,它会立即开始执行。左图表示acitvity未销毁,只是被停止再开始的过程,右图表示acvitiry所在的进程被关了,那么acitvity就销毁了,然后又被重新创建的过程。 当用户在开启一个新activity时,当前的activity可能在内存中处于停止状态也可能由于新activity需要更多内存而被系统杀掉了,但不论怎样,当用户在新activity上按返回键时,他希望看到的是原先的activity的界面。原先的activity如果是被重新创建,那么它
阅读全文
摘要:译自:http://net.tutsplus.com/tutorials/html-css-techniques/say-hello-to-css3-filters/Jeffrey Way于2011年12月22日译者:蒋宇捷(转载请标明出处-http://blog.csdn.net/hfahe)------教程详细内容• 主题:CSS滤镜• 可用性: Webkit每晚构建的版本• 酷炫程度:100观看演示 本月初公布了一个新的规范-滤镜效果1.0。 它提出了一些令人兴奋的新特性,我们可以使用它在浏览器中来创建Photoshop般的效果。 更妙的是, Webkit已经在每晚构建的版本中添加...
阅读全文
摘要:管理Activity的生命周期 通过实现activity的生命周期回调方法来管理你的activity,是创造既稳定又灵活的activity的关键。Activity的生命周期直接受到相关的其它activity和它的任务以及所在栈的影响。一个activity可生存在三种基本的状态中:Resumed Activity位于屏幕的最上层,并具有用户焦点,用户可以操作它。(此状态有时也被认为是“运行”状态)。Paused Activity B位于最上层并其获得输入焦点,acitvity A位于其下一层,但activity A依然可见,此时activity A就处于Paused状态。Activity ...
阅读全文
摘要:安装图解: http://www.jb51.net/article/23876.htm本文摘自:http://www.heiqu.com/show-64764-1.html内容为: 由于安装MySQL的时候,疏忽没有选择底层编码方式,采用默认的ASCII的编码格式,于是接二连三的中文转换问题随之而来,就想卸载了重新安装MYSQL,这一卸载倒是出了问题,导致安装的时候安装不上,在网上找了一个多小时也没解决。 重装系统永远是个好办法,但有谁喜欢这么做呀:( 后来无意发现是卸载的时候没有卸载完全导致,下面给出完整的卸载MySQL 5.1的卸载方法: 1、控制面板里的增加删除程序内进行删除...
阅读全文
摘要:概述Activities 是一个程序的组件之一。它的主要功能是提供界面。 一个程序一般由多个Activity组成,各activities之间关系很松散,它们之间没有直接的关联。必须有一个activity被指定为主activity,它是程序启动时首先显示的界面。每个activity都可以随意启动其它的activity。每当一个activity被启动,则前一个activity就被停止。一个程序中的所有启动的activity都被放在一个栈中,所以被停止的activity并没有销毁,而在存于棧中。新启动的activity先被存放于栈中,然后获得输入焦点。在当前活动的activity上点返回键,它被从.
阅读全文
摘要:快捷键为了提高对选项菜单的操作速度,你可以在具有物理按键的设备上为菜单增加快捷键.快捷键可以对应键盘上的字母或数字.你需要做的是为<item>元素指定属性android:alphabeticShortcut 和android:numericShortcut 的值.你也可以在代码中使用方法setAlphabeticShortcut(char) 和setNumericShortcut(char).来完成.快捷键并不是大小写敏感的.例如,如果你把"s"键作为菜单项 "save" 的快捷键,那么当菜单打开时,用户按下了 "s" 键
阅读全文
摘要:在android系统中,不同铃声存放的铃声路径:/system/media/audio/ringtones 来电铃声 /system/media/audio/notifications 短信通知铃声 /system/media/audio/alarms 闹钟铃声铃声的设置:import java.io.File; import android.app.Activity;
import android.content.Intent;
import android.media.RingtoneManager;
import android.net.U...
阅读全文
摘要:这里是一些其它特性,你可以把它们应用于大多数菜单条目.菜单组一个菜单组是由共享某些特性的一系列菜单项组成的.对于组,你可以:显示或隐藏所有的菜单项 ,使用方法 setGroupVisible()Enable 或 disable 所有的菜单项,使用方法 setGroupEnabled()指定所有的菜单项是否是 checkable ,使用方法 setGroupCheckable()要创建组,你可以在资源文件中通过把 <item> 元素嵌套到一个 <group> 元素实现,或在调用add()方法时指定一个组 ID.下面是菜单资源中使用组的例子:<?xml version
阅读全文
摘要:创建子菜单们一个子菜单是一个在已有菜单的某个菜单项上打开的菜单.你可以向任何菜单添加子菜单.当你的程序拥有很多功能并可按类别组织起来,那么子菜单是最佳选择.比如PC 程序中的菜单栏 (File, Edit,View等等.).当创建你的菜单资源时,你可以添加一个<menu> 元素作为一个<item>元素的孩子来创建子菜单.例如:<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk
阅读全文
摘要:创建一个上下文菜单一个上下文菜单跟PC上的右键菜单类似.你应使用上下文菜单为用户界面上的某个部分提供动作选择功能.在Android中,一个上下文菜单会在用户长按一个界面条目时出现.你可以为任何View创建上下文菜单,但是在 ListView中是最常用到上下文菜单的.每当用户在一个ListView项上长按,并且这个ListView注册了上下文菜单,那么被按的 list item就会弹出上下文菜单 (在联系人应用中就演示了这个过程).Register a ListView如果你的activity使用一个ListView并且你希望所有的list items都提供一个上下文菜单,应把ListView传
阅读全文
摘要:创建一个选项菜单选项菜单里应该包含基本的activity动作和必须的导航条目 (例如,一个打开程序设置的菜单项). 选项菜单的菜单项有两种不同的选择方法,一是菜单项按钮,二是通过 Action Bar (在Android 3.0及以上版本中).图1:浏览器中的选项菜单图 2. Email程序中的动作栏,具有两个动作和一个溢出菜单当 运行于Android 2.3及更低版本时,选项菜单出现在屏幕的底部,见图1.当打开选项菜单时,首先映入眼帘的是图标菜单,它有六个菜单项,如果你加入了多于六个菜单项,系 统会把第六个菜单项和后面的菜单项放到溢出菜单中,用户可以通过 "More"
阅读全文
摘要:菜单是Activity的一个重要组成部分。它为用户操作提供了很爽的途径。Android提供了一个简单的框架来向程序中添加标准菜单 .共有三种菜单:选项菜单一个activity的菜单项们的主要集合。当你按MENU按钮时(硬件上的)就会出现。如果你的程序跑在 Android 3.0或以上,你可以通过把菜单项作为 "action items"直接放在Actiion Bar上来提供快速选择能力。弹出菜单一列浮动的菜单项们,当用户对一个注册了弹出菜单的View按住不放时就会出现。子菜单也是一列浮动的菜单项们,当用户点击一个包含嵌入菜单的菜单项时出现。本文档阐明怎样创建各类型的菜单,怎
阅读全文
摘要:经过一个月二十多天的不眠之日(我真的没睡过午觉哦),两易其稿,终于完成了RTP/RTSP转发服务器(或者叫代理服务器)!!完全按照live555的架构添加了新的ServerMediaSubsession,Demux,Source,Sink等类(很多类都是尽量利用了live555的现有类).既可转发点播流也可转发实时流.转发实时流时,充分利用了现有数据流结构,使系统资源占用负载极低,转发包时几乎未对包作什么处理,不解包,不重组,收到就发,cpu和内存占用降到极致!稳定可靠性一流!,是PC,服务器,以及嵌入式设备建立流媒体+代理服务器的最佳选择!
阅读全文
摘要:本人在做RTSP/RTP代理服务器的过程中,遇到了一个令人悲忿(这正是我现在的心情)的问题.对于某个厂家的视频服务器,改用最新版live555(live.2011.12.02 .tar.gz)源码后,竟然无论如何也不能转发那个视频服务器超过10秒钟!10秒内视频服务器必然会主动断开.经过N天以契而不舍的苦逼型精神进行无数次折腾后,终于发现了原因:版本问题,新版源码反而不行!分析其原因,应是出在新版改变了对RTCP包发送时间的计算规则.可能更科学了,但很多现有服务器却接受不了.具体是这样的:一般情况下,在收到Server端的SR包时,Client都会回应RR包,这样Server端的包与Clien
阅读全文
摘要:referer 实现防盗链request_referer.java :package cn.request;import java.io.IOException;import java.io.PrintWriter;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;//referer防盗链public class
阅读全文
摘要:十六 几个重要对象的生命期live555中很多类,类与类之间的关系复杂,从属关系不明显,层次上看起来也有些乱.所以源代码读起来比较困难,对于一些对象生命的来龙去脉也很难厘清.但这并不能说明live555的架构不好,最适合的才是最好的,对于流媒体的处理来说,live555架构已是相当精巧,当然,这是在你深入了解它的基础上才会有的体会.live555作为服务器,大家都很关心对内存的利用效率,是否过多的吃内存?是否造成太多的内存碎片?我个人认为不必太担心这方面的事,live555对于内存的使用效率还是比较高的,当然要求太高的可能要自己实现内存池之类的东西.然而,我在使用它的过程中,还是发现了一点小小
阅读全文
摘要:写在前面的话:随着移动设备的逐渐普及和Web技术的发展,跨端的Web开发需求将会越来越大。如何在多种设备上进行跨端的界面适配呢?我们可以利用CSS3的Media Query来实现。本文主要介绍了移动开发和CSS3结合,来进行多种分辨率适配的例子。 文中提到的响应式网页设计(Responsive web design)是一种现代网页设计方法,基于CSS3的媒介查询(Media Query)特性使得网页适应不同设备,即根据设备的分辨率和缩放自动重新布局。 ----------- 译自:http://webdesignerwall.com/tutorials/responsi...
阅读全文
摘要:Android提供Content Provider来实现应用程序之间的数据共享,provider提供了标准的接口用于存储和检索多种类型的数据。图像 、音频和视频的标准content provider就是MediaStore。1)获取图像的URI要获得标准的图像存储路径,我们需要获得MediaStore的引用,而这是通过content resolver来实现的(因为使用Content resolver可以获取content provider,而MediaStore就是一个content provider)。传递指定的URI给content resolver,可以得到对应的content prov
阅读全文
摘要:Android中可以简单直接地使用intent来获取已安装应用软件提供的功能,它是Android的关键组件之一,主要作用有两个:一是触发其他应用程序提供的功能;二是在单个应用程序中实现Activity之间的切换。软件开发人员使用intent filter来声明应用程序提供某种特定功能,这个声明是在AndroidManifest.xml中进行的,例如,内置的Camera应用在它的manifest文件中的"Camera"标签下进行了如下声明:<intent-filter><action android:name="android.media.acti
阅读全文
摘要:解解request乱码问题(提交的是中文信息):通过post方式提交数据给Servlet Servlet服务端部分代码: public void doPost(httpServletRequest request, httpServletResponse response) throws ServletException, IOException{ //在获取用户表单信息之前把request的码表设置成UTF-8, //如果没这句的话,如果提交中文信息的时候,会照成乱码。 request.setCharacterEncoding("UTF-8"); String value
阅读全文
摘要:package cn.response; import java.io.IOException;
import java.io.PrintWriter; import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; public class response_4 extends HttpServlet { p...
阅读全文
摘要:package cn.response;import java.awt.Color;import java.awt.Font;import java.awt.Graphics;import java.awt.Graphics2D;import java.awt.image.BufferedImage;import java.io.IOException;import java.io.PrintWriter;import java.util.Random; //随机数import javax.imageio.ImageIO;import javax.servlet.ServletExceptio
阅读全文
摘要:发现对java的API有点感悟最近在看老方(方立勋)的java web视频,感觉看他的视频很有激情,讲的挺详细的,看着看着他的视频,以前都不知道怎么去读API文档,突然发现自己对API文档有点感悟,也许听他视频的时候,引导了我对API的有所见解,继续学习......
阅读全文
摘要:这篇文章介绍ril.cpp中实现部分代码中的四个字符串输出函数及其相应的枚举类型。首先看requestToString()函数的代码,它的功能是将将ril_command.h和ril_unsol_commands.h中的命令转换成字符串描述: const char * requestToString(int request) { switch(request) { case RIL_REQUEST_GET_SIM_STATUS: return "GET_SIM_STATUS"; case RIL_REQUEST_ENTER_SIM_PIN: return...
阅读全文
摘要:使用Myeclipse 工具 在WebRoot目录下创建一个Download文件夹(new-->folder),以存放 附件(图片,文件...),具体实现下载功能的代码如下:package cn.response; import java.io.*;
import java.net.URLEncoder; import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servle
阅读全文
摘要:Android源码目录hardware/ril/libril中总共包含5个C/CPP文件,它们分别是ril_commands.h、ril_unsol_commands.h、ril_event.h、ril_event.cpp和ril.cpp。这篇文章主要分析ril.cpp文件。 我们可以将该文件划分为定义部分和实现部分,先来看定义部分: #define LOG_TAG "RILC" #include <hardware_legacy/power.h> #include <telephony/ril.h> #include <telephony/r
阅读全文
摘要:Android源码目录hardware/ril/libril中总共包含5个C/CPP文件,它们分别是ril_commands.h、ril_unsol_commands.h、ril_event.h、ril_event.cpp和ril.cpp。这篇文章主要分析commands相关的两个头文件,这两个文件主要定义了所有telephony可以接收的命令或者响应的事件类型,以及相应的处理函数。 进行源码分析前,我们必须先知道目前主流智能手机的硬件架构中有两个处理器,一个称为Application Processor(AP),主要用于运行操作系统,执行应用程序;一个称为Baseband Processo.
阅读全文
摘要:也许有的开发者觉得在Android开发中用户界面设计和实现简陋而麻烦,缺乏有效的帮助和支持。Android-ui-utils开源项目包含了一系列工具,帮助我们更好的设计和开发Android用户界面。项目主页为http://code.google.com/p/android-ui-utils/。它主要包含以下几个主要工具:一、Android Asset Studio 这是一个基于网页的工具,可以帮助用户生成Android的图像资源。地址为:http://android-ui-utils.googlecode.com/hg/asset-studio/dist/index.html。An...
阅读全文
摘要:java虚拟机(JVM)的内存,默认情况下是 64M 。设置方法: 在Eclipse,对着 项目名称或java文件,点右键选择---- Run As 具体操作如下: Run As --> Run configurations --> Arguments选项的 VM arguments 方框中填写 比如: -Xmx100m 注意: -Xmx100m 中的100m 是把JVM内存设置为100兆 (可随意设置)。
阅读全文
摘要:11月30日熟人社交移动应用Path 2.0发布后,因为其精美的界面和漂亮的动画效果受到许多人的赞誉,在Pinterest之后,又涌起一股新的模仿浪潮。 Path 2.0的一个亮点是左下角的菜单展开动画效果: 一个名为Victor的法国人使用纯CSS3在HTML上实现了同样的动画效果,没有使用任何图片和Javascript,具体采用Sass+Compass计算坐标,最后为每一项生成了Keyframe动画,十分的有想象力,动画效果如下所示,也可以在http://dribbble.com/shots/339001-Path-menu-recreated-in-css3查看。 ...
阅读全文
摘要:Android源码目录hardware/ril/libril目录中总共包含5个C/CPP文件,它们分别是ril_commands.h、ril_unsol_commands.h、ril_event.h、ril_event.cpp和ril.cpp。这篇文章主要分析ril_event的相关代码。 ril_event主要处理电话模块涉及的端口、modem等产生的事件,并将多个事件按时间顺序进行组织,并保存在事件队别中,主要使用了三个队列,分别是:watch_table[],timer_list和pending_list。代码是以C语言方式实现的,先来看头文件ril_event.h:// 每次监视的最.
阅读全文
摘要:译自:http://html5doctor.com/video-subtitling-and-webvtt/ 转载请标明出处:蒋宇捷的博客(http://blog.csdn.net/hfahe) -------- 我们在几年前就已经可以不需要插件在浏览器里播放视频了。但是在编码解码器方面,仍然存在一些困扰。现在问题已经集中在视频本身上面了:下一步将是添加资源到视频里,使其更容易访问并且为观众提供更多选择。 我们目前还没有说到下面的内容,这代表视频还不是非常便利,用户还不能非常轻松的定位到某一个特定的段落。值得庆幸的是,有一个名为WebVTT(网络视频文本轨道)的新...
阅读全文
摘要:译自:http://webdesignerwall.com/tutorials/css3-image-styles 转载请标明出处:蒋宇捷的博客(http://blog.csdn.net/hfahe) - - - - - - 当在图像元素上直接使用CSS3内阴影或者圆角边框时,浏览器对于CSS样式的渲染并不完美。但是,如果图像作为背景图像使用时,你可以为它添加任何样式,而且可以实现完美的渲染。Darcy Clarke和我一起编写了一个如何使用jQuery来动态创建完美圆角边框的快速教程。今天我要重启这个话题,向你展示使用CSS的背景图像技巧我们还可以做多少事情。我将向你展示如...
阅读全文
摘要:从暑假开始用心学android,也是从那个时候开始在博客上记录自己的学习心得,一路走来,遇到了很多困难,但同时我也学到了很多。我是一个比较有好奇心的人,经常在csdn上看看有什么最新的动态,最新的技术什么的,要是碰到感兴趣就会花些时间研究一下,我在09年底就开始接触android,那会还没有这么火,只是当成一个新的东西玩玩,一段时间后就没什么激情了,接下来,就去学了点其他东西,如jsp,mysql,struts,spring,hibernate,web开发的技术,adobe的Flex,还有其他的语言如python,ruby,C#等,这些东西都没这么深入,以至于学了这个就忘了那个。现在回过头去.
阅读全文