当前位置:  编程技术>移动开发
本页文章导读:
    ▪[转]五大格局对象-FrameLayout,LinearLayout ,AbsoluteLayout,RelativeLayout,TableLayout        [转]五大布局对象---FrameLayout,LinearLayout ,AbsoluteLayout,RelativeLayout,TableLayout Android有五大布局对象,它们分别是FrameLayout(框架布局:不知道是不是这么翻译的),LinearLayout (线性布局),AbsoluteLayout(绝对布.........
    ▪ Cupcake编译指点        Cupcake编译指导 Cupcake 编译指导   准备文件: \ cupcake\ 从服务器下载该目录下所有文件   解压 cupcake.tgz 至 ~/cupcake tar zxf path/cupcake.tgz –C ~/   拷贝 clean_git.sh 至 ~/cupcake/ 并执行之,以清.........
    ▪ 手机流媒体技术大要       手机流媒体技术概要 1 手机流媒体的定位        流媒体 简单来说就是应用流技术在网络上传输的多媒体文件;而流技术 就是把连续的影象和声音信息经过压缩处理后放上网站服务.........

[1][转]五大格局对象-FrameLayout,LinearLayout ,AbsoluteLayout,RelativeLayout,TableLayout
    来源: 互联网  发布时间: 2014-02-18
[转]五大布局对象---FrameLayout,LinearLayout ,AbsoluteLayout,RelativeLayout,TableLayout

Android有五大布局对象,它们分别是FrameLayout(框架布局:不知道是不是这么翻译的),LinearLayout (线性布局),AbsoluteLayout(绝对布局),RelativeLayout(相对布局),TableLayout(表格布局).


FrameLayout:

FrameLayout是最简单的一个布局对象。它被定制为你屏幕上的一个空白备用区域,之后你可以在其中填充一个单一对象 — 比如,一张你要发布的图片。所有的子元素将会固定在屏幕的左上角;你不能为FrameLayout中的一个子元素指定一个位置。后一个子元素将会直接在前 一个子元素之上进行覆盖填充,把它们部份或全部挡住(除非后一个子元素是透明的)。

我们看一下效果图:

 

其中Main.xml 代码如下:

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>

 <!-- 我们在这里加了一个Button按钮 -->
<Button
  android:text="button"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
<TextView
android:text="textview"
android:textColor="#0000ff"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
</FrameLayout>

 

LinearLayout:

LinearLayout以你为它设置的垂直或水平的属性值,来排列所有的子元素。所有的子元素都被堆放在其它元素之后,因此一个垂直列表的每一行只会有 一个元素,而不管他们有多宽,而一个水平列表将会只有一个行高(高度为最高子元素的高度加上边框高度)。LinearLayout保持子元素之间的间隔以 及互相对齐(相对一个元素的右对齐、中间对齐或者左对齐)。

LinearLayout还支持为单独的子元素指定weight 。好处就是允许子元素可以填充屏幕上的剩余空间。这也避免了在一个大屏幕中,一串小对象挤 成一堆的情况,而是允许他们放大填充空白。子元素指定一个weight 值,剩余的空间就会按这些子元素指定的weight 比例分配给这些子元素。默认的 weight 值为0。例如,如果有三个文本框,其中两个指定了weight 值为1,那么,这两个文本框将等比例地放大,并填满剩余的空间,而第三个文本框 不会放大。

我们看一下效果图:

 

其中Main.xm l代码如下:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<LinearLayout
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="2">
<TextView
  android:text="Welcome to Mr Wei's blog"
android:textSize="15pt"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
</LinearLayout>
<LinearLayout
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1">

<TextView
android:text="red"

        android:gravity="center_horizontal" //这里字水平居中
android:background="#aa0000"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_weight="1"/>
<TextView
android:text="green"
android:gravity="center_horizontal "
android:background="#00aa00"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_weight="1"/>   
    </LinearLayout>
</LinearLayout>

AbsoluteLayout:

AbsoluteLayout 可以让子元素指定准确的x/y坐标值,并显示在屏幕上。(0, 0)为左上角,当向下或向右移动时,坐标值将变大。AbsoluteLayout 没有页边框,允许元素之间互相重叠(尽管不推荐)。我们通常不推荐使用 AbsoluteLayout ,除非你有正当理由要使用它,因为它使界面代码太过刚性,以至于在不同的设备上可能不能很好地工作。

我们看一下效果图:

 

其中Main.xm l代码如下:

<?xml version="1.0" encoding="utf-8"?>
<AbsoluteLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<EditText
android:text="Welcome to Mr Wei's blog"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
<Button
  android:layout_x="250px" //设置按钮的X坐标
android:layout_y="40px" //设置按钮的Y坐标
android:layout_width="70px" //设置按钮的宽度
android:layout_height="wrap_content"
android:text="Button"
/>
</AbsoluteLayout>

 

RelativeLayout:

RelativeLayout 允许子元素指定他们相对于其它元素或父元素的位置(通过ID 指定)。因此,你可以以右对齐,或上下,或置于屏幕中央的形式来 排列两个元素。元素按顺序排列,因此如果第一个元素在屏幕的中央,那么相对于这个元素的其它元素将以屏幕中央的相对位置来排列。如果使用XML 来指定这个 layout ,在你定义它之前,被关联的元素必须定义。

让我们看一下效果图:

 

其中Main.xml 代码如下:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextView
android:id="@+id/label"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
  android:text="Welcome to Mr Wei's blog:"/>
<EditText
android:id="@+id/entry"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_below="@id/label"/>
<Button
android:id="@+id/ok"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/entry"
android:layout_alignParentRight="true"
android:layout_marginLeft="10dip"
android:text="OK" />
   <Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toLeftOf="@id/ok"
android:layout_alignTop="@id/ok"
android:text="Cancel" />
</RelativeLayout>

TableLayout:

TableLayout 将子元素的位置分配到行或列中。一个TableLayout 由许多的TableRow 组成,每个TableRow 都会定义一个 row (事实上,你可以定义其它的子对象,这在下面会解释到)。TableLayout 容器不会显示row 、cloumns 或cell 的边框线。每个 row 拥有0个或多个的cell ;每个cell 拥有一个View 对象。表格由列和行组成许多的单元格。表格允许单元格为空。单元格不能跨列,这与HTML 中的不一样。

下面让我们看一下效果图:

 

其中Main.xml 代码如下:

<?xml version="1.0" encoding="utf-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent" android:layout_height="fill_parent"
android:stretchColumns="1">
<TableRow>
<TextView android:layout_column="1" android:text="Open..." />
<TextView android:text="Ctrl-O" android:gravity="right" />
  </TableRow>
<TableRow>
<TextView android:layout_column="1" android:text="Save..." />
<TextView android:text="Ctrl-S" android:gravity="right" />
</TableRow>
<View android:layout_height="2dip" android:background="#FF909090" /> //这里是上图中的分隔线
<TableRow>
<TextView android:text="X" />
<TextView android:text="Export..." />
<TextView android:text="Ctrl-E" android:gravity="right " />
  </TableRow>
<View android:layout_height="2dip" android:background="#FF909090" />
<TableRow>
<TextView android:layout_column="1" android:text="Quit"
android:padding="3dip" />
  </TableRow>
</TableLayout>

 

p.s:还没全部试过,有时间再试试


    
[2] Cupcake编译指点
    来源: 互联网  发布时间: 2014-02-18
Cupcake编译指导

Cupcake 编译指导

 

准备文件:

\ cupcake\

从服务器下载该目录下所有文件

 

解压 cupcake.tgz 至 ~/cupcake

tar zxf path/cupcake.tgz –C ~/

 

拷贝 clean_git.sh 至 ~/cupcake/ 并执行之,以清除各个子目录下的 .git 目录

       cd ~/cupcake

       chomd a+x clean_git.sh

       ./clean_git.sh

 

做原始版本记录

       git init

       git add .

       git commit –m “cupcake base code”

 

~/cupcake 目录下新建 .gitignore 文件,输入如下内容,让 git 忽略之

       out

       *.patch

       *~

 

解压 Android_PlatformRel_Linux_MHLV_2009WW21.tgz

       tar zxf Android_PlatformRel_Linux_MHLV_2009WW21.tgz –C ~/

 

拷贝 cupcake_patch 到 cupcake 目录

cp –r ~/pxa_cupcake/src/cupcake/cupcake_patches/* ~/cupcake/

 

解压 vendor.tgz 到 cupcake 目录下

tar zxvf ~/pxa_cupcake/src/cupcake/vendor.tgz -C ~/cupcake

( 此步骤不执行将不会出现 littleton 选项 )

 

修改 apply_cupcake_patch.sh

       git-am $cupcake_root_dir/$cupcake_patch

       修改为

       patch –p1 < $cupcake_root_dir/$cupcake_patch

 

打 cupcake_patch

       ./ apply_cupcake_patch.sh

 

做打 patch 后的版本记录

       git add .

       git commit

 

配置编译环境

编译 cupcake 需要 JDK1.5 , gcc-4.3 , g++-4.3 。

但 Ubuntu9.10 未安装 jdk1.5 ,默认安装 gcc-4.4 , g++-4.4 ,所以需要安装上述 2 个。

 

JDK:

如果之前装了 java6 sdk ,但编译 Android 需要 jdk5 ,所以先把 Java6 屏蔽掉。

lua@ubuntu:~$ ls /usr/bin/j*

/usr/bin/java     /usr/bin/javaws    /usr/bin/jexec       /usr/bin/jockey-text

/usr/bin/java_vm  /usr/bin/jcontrol  /usr/bin/jockey-gtk  /usr/bin/join

lua@ubuntu:~$ sudo mv /usr/bin/java /usr/bin/java.bak

lua@ubuntu:~$ sudo mv /usr/bin/javaws /usr/bin/javaws.bak

lua@ubuntu:~$ sudo mv /usr/bin/java_vm /usr/bin/java_vm.bak

lua@ubuntu:~$ ls /usr/bin/j*

/usr/bin/java.bak     /usr/bin/jcontrol    /usr/bin/jockey-text

/usr/bin/java_vm.bak  /usr/bin/jexec       /usr/bin/join

/usr/bin/javaws.bak   /usr/bin/jockey-gtk

 

比如 jdk-1_5_0_21-linux-i586.bin 放到如下目录

/home/lua/Downloads

在 shell 窗口执行 sh jdk-1_5_0_21-linux-i586.bin

jdk5 将安装到 /home/lua/Downloads/jdk1.5.0_21

将 /home/lua/Downloads/jdk1.5.0_21/bin 添加到 PATH

lua@ubuntu:~$ echo $PATH

/home/lua/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/home/lua/arm-marvell-linux-gnueabi/bin:/home/lua/bin:/home/lua/work/android-sdk-linux_86/tools:/home/lua/work/eclipse:/home/lua/Downloads/jdk1.5.0_21/bin

 

测试 Java ,系统能找到 java 且版本正确。

lua@ubuntu:~$ which java

/home/lua/Downloads/jdk1.5.0_21/bin/java

lua@ubuntu:~$ which javac

/home/lua/Downloads/jdk1.5.0_21/bin/javac

lua@ubuntu:~$ java -version

java version "1.5.0_21"

Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_21-b01)

Java HotSpot(TM) Client VM (build 1.5.0_21-b01, mixed mode, sharing)

lua@ubuntu:~$ javac -version

javac 1.5.0_21

 

GCC-4.3

安装文件在 ubuntu-9.10-gcc-4.3 目录下,

       sudo dpkg -i cpp-4.3_4.3.4-5ubuntu1_i386.deb

       sudo dpkg -i gcc-4.3-base_4.3.4-5ubuntu1_i386.deb

       sudo dpkg -i gcc-4.3_4.3.4-5ubuntu1_i386.deb

       sudo dpkg -i g++-4.3_4.3.4-5ubuntu1_i386.deb

       sudo dpkg -i libstdc++6-4.3-dev_4.3.4-5ubuntu1_i386.deb

查看旧的 gcc , g++

       ll /usr/bin/gcc*

       ll /usr/bin/g++*

创建 gcc , g++ 软连接

       sudo rm gcc g++

       sudo ln –s gcc-4.3 gcc

       sudo ln –s g++-4.3 g++

 

 

修改 cupcake bug

1. 如果直接 make ,会出现 frameworks/policies/base/PolicyConfig.mk:22: ***

No module defined for the given PRODUCT_POLICY (android.policy_phone).  Stop. 错

误。

    解决办法:

    在 build/tools/findleaves.sh 中的第 89 行,

    这一句 find "${@:0:$nargs}" $findargs -type f -name "$filename" -print |

    改为 find "${@:1:$nargs-1}" $findargs -type f -name "$filename" -print |

 

2. qemu_gnu.patch

project external/qemu/

diff --git a/Makefile.android b/Makefile.android

index 4c697fb..98d2084 100644

--- a/Makefile.android

+++ b/Makefile.android

@@ -18,7 +18,7 @@ MY_CFLAGS := $(CONFIG_INCLUDES) -O2 -g \

 

  # this is needed to build the emulator on 64-bit Linux systems

  ifeq ($(HOST_OS)-$(HOST_ARCH),linux-x86)

-  MY_CFLAGS += -Wa,--32

+  MY_CFLAGS += -Wa,--32 -D_GNU_SOURCE

  endif

 

  ifeq ($(HOST_OS),freebsd)

 

编译 cupcake

Buid PXA Android by:

  $ . build/envsetup.sh

  $ choosecombo

Note: please chose Device-release-littleton-user

  $ make –j4

After a while (30~60 minutes), the binaries will be generated under  /out/target/product/littleton/.


    
[3] 手机流媒体技术大要
    来源: 互联网  发布时间: 2014-02-18
手机流媒体技术概要
1 手机流媒体的定位
       流媒体 简单来说就是应用流技术在网络上传输的多媒体文件;而流技术 就是把连续的影象和声音信息经过压缩处理后放上网站服务器,让用户一边下载一边观看、收听,而不需要等整个压缩文件下载到自己机器后才可以观看的网络传输技术。
       在 gprs 和 CDMA 网络中,就可以运营手机流媒体业务 。最主要的目标是做到边下载边播放,缩短等待时间。
       一般意义的手机流媒体业务是在 3G 网络中存在的。它最主要的目标是节省手机的磁盘空间。
2 手机流媒体的关键技术
       采集 :其实是所有过程中最耗费精力的一个步骤,如何采集,采集谁,是否授权这些问题我们都应该考虑到。我们目前的专业视频采集设备在功能上可以采集:有限电视,电台广播,摄像头,家用 DV 等等。
      
       压缩 :手机流媒体与大众流媒体不同,他受限于联通网络的传输速度,虽然目前中国联通 CDMA  1 X 网络能支持 133 k / 秒的传播速度,但是在真正的实施过程中,如果要使用户进行流畅的观看,后期的压缩技术是必不可少的。
 
       传输控制 :我们知道一般的视频每秒的桢数都在 50 桢左右,在目前的网络环境下,如果保持流畅的观看,必须首先将桢数控制在 10 桢以下,并对画面进行优化。
 
       Cache: 该技术先在使用者端的电脑上创造一个缓冲区,于播放前预先下载一段资料作为缓冲,于网路实际连线速度小于播放所耗用资料的速度时,播放程序就会取用这一小段缓冲区内的资料,避免播放的中断,也使得播放品质得以维持。
 
       发布 :发布的过程其实就是一个传输过程,只要安装了流媒体服务器特定的客户端软件就能将压缩好的流媒体文件上传至服务器端。
 
3 手机流媒体的传输技术
    流媒体的主要技术特征就是采用流式传输,即通过 Internet 将影音节目传送到 PC 机。实现流式传输有两种方法:顺序流式传输( Progressive streaming )和实时流式传输( Real-time streaming )。
   1. 顺序流式传输
顺序流式传输采用顺序下载方式,用户可以观看在线媒体节目。但是在给定时刻,用户只能观看已下载的那部分,而不能跳到还未下载的前序部分;它不能根据用户的连接速度做调整。由于标准的 HTTP 服务器可发送这种形式的文件,而不需要其他特殊协议,它经常被称作 HTTP 流式传输;顺序流式传输方式适合高质量的短片段,如片头、片尾和广告,媒体文件在播放前观看的部分是无损下载的, QoS 高;顺序流式文件放在标准 HTTP 或 FTP 服务器上,易于管理,基本上与防火墙无关。顺序流式传输不适合长片段和有随机访问要求的视频、讲座、演说与演示,它也不支持现场广播。严格说来,它是一种点播技术。
根据本人的 3G 开发测试经验,在目前实际环境下,顺序流式传输一般只能无损传输 50k 以下的音频文件。 (wav)
   2 .实时流式传输
  实时流式传输保证媒体信号带宽与网络连接相匹配,使媒体可被实时观看到。实时流与 HTTP 流式传输不同,需要专用的流媒体服务器与传输协议。实时流式传输特别适合现场事件,也支持随机访问,用户可快进或后退以观看前面或后面的内容。理论上,实时流一经播放就可不停地收看,但实际上,可能会发生周期暂停。
   3 .二者比较
  ( 1 )从视频质量上讲,实时流式传输必须匹配连接带宽,由于出错丢失的信息被忽略掉,网络拥挤或出现问题时,视频质量会很差;如欲保证视频质量,顺序流式传输更好。
( 2 )实时流式传输需要特定 流媒体服务器 ,如 QuickTime Streaming Server 、 Real Server 与 Windows Media Server ,这些服务器允许对媒体发送进行更多级别的控制,因而系统设置、管理比标准 HTTP 服务器更复杂。
火墙时有时会出现问题,导致用户不能看到一些地点的实时内容;而顺序流式传输与防火墙无关。
4 流媒体传输的网络协议
       TCP 需要较多的开销,故不太适合传输实时数据;流式传输一般采用 HTTP/TCP (RTCP) 来传输控制信息,而用 RTP/UDP (RTP) 来传输实时声音数据。
       ( 1 ) 实时传输协议 RTP
  实时传输协议 RTP 被定义为在一对一或一对多的传输情况下工作,其目的是提供时间信息和实现流同步; RTP 通常使用 UDP 来传送数据;当应用程序开始一个 RTP 会话时将使用两个端口:一个给 RTP ,一个给 RTCP 。 RTP 本身并不能为按顺序传送数据包提供可靠的传送机制,也不提供流量控制或拥塞控制,它依靠 RTCP 提供这些服务;通常 RTP 算法并不作为一个独立的网络层来实现,而是作为应用程序代码的一部分。
  ( 2 )实时传输控制协议 RTCP
  实时传输控制协议 RTCP 和 RTP 一起提供流量控制和拥塞控制服务;在 RTP 会话期间,各参与者周期性地传送 RTCP 包; RTCP 包中含有已发送的数据包的数量、丢失的数据包数量等统计资料,因此,服务器可以利用这些信息动态地改变传输速率,甚至改变有效载荷类型。
   RTP 和 RTCP 配合使用,它们能以有效的反馈和最小的开销使传输效率最佳化,因而特别适合传送网上的实时数据。
  ( 3 )实时流协议 RTSP
实时流协议 RTSP 定义了一对多应用程序如何有效地通过 IP 网络传送多媒体数据; RTSP 在体系结构上位于 RTP 和 RTCP 之上,它使用 TCP 或 RTP 完成数据传输; HTTP 与 RTSP 相比, HTTP 传送 HTML 超链接文档,而 RTSP 传送的是多媒体数据; HTTP 请求由客户机发出,服务器做出响应;使用 RTSP 时,客户机和服务器都可以发出请求,即 RTSP 可以是双向的。
点对点的手机可视通话,必须在手机终端实现 RTSP 。
5 流媒体服务器 竞争的公司
    其实流媒体文件有很多种类型,只要采用流媒体技术的均可称之为流媒体。比如 Macromedia 公司的 SWF(Shock Wave Flash) 、 Vivo 公司的 VIV(Vivo Movie) 都是流媒体格式。现在最为流行的流媒体要数微软、 Real Networks 和 Apple 公司。表 1-1 罗列了这三家公司的所有流媒体格式的类型。
公司
文件格式
媒体类型
微软
ASF(Advanced Stream Format)
Video/x-ms-asf
Real Networks
RM(Real Video)
Application/x-pn-realmedia
RA(Real Audio)
Audio/x-pn-realaudio
RP(Real Pix)
Image/vnd.rn-realpix
RT(Real Text)
Text/vnd.rn-realtext
Apple
MOV(QuickTime Movie)
Video/quicktime
QT(QuickTime Movie)
Video/quicktime
表 1-1
6 联通的手机流媒体业务
现在正式运营的有 3 种方式的手机流媒体业务,平台均在总部,总部统一运营。
1 、神奇宝典掌上电视类业务:
  目前有一些 BREW 的高端手机支持该业务,用户在神奇宝典上下载一个播放器软件后,可以通过该播放器软件观看由 CP 提供的业务。用户手机通过神奇宝典方式上网。该业务由联通和高通的合资公司博路公司负责运营。详细资料请访问 http://www.myuni.com.cn/
  目前支持手机:三星 W109 、三星 E159 、三星 W209 、三星 W219 、三星 W299 、三星 W309 、摩托罗拉 A860 、 LG C910 、 LG C930 、 LG C950 、浪潮 LC7150 。
要下载软件安装软件。基本使用方式和 kjava 类同,不过一般的 SP 进不了该市场,一般是媒体类 SP 进入该市场。
   2 、联通新时讯的流媒体业务( PDA 版的视讯新干线):
  目前支持该业务的终端只有一款大显 CU928 。用户手机通过掌中宽带方式上网,用户的登录名和密码: CARD 、 CARD 。该业务的运营由该业务由联通下属的全资子公司联通新时讯公司独立负责。详细资料请访问 http://www.u-web.cn
  支持手机:大显 CU928
   3 、 wap 方式的流媒体业务(手机版的视讯新干线):
  总部的视讯新干线业务是联通公司基于 CDMA1X 网络,为与对手展开差异化竞争而推出和互动视界、彩 E 、神奇宝典等并列的又一业务子品牌。用户的登录名和密码: WAP2 、 WAP2 。该业务由总部增值业务部负责运营。详细资料请访问 http://www.myuni.com.cn/
  支持手机: LG C950 、 LG - C260 、 LG - C270 、 LG - C960 、三星 SCH-E159 、三星 M299 、三星 I539
   WAP 方式不需要下载客户端。这些手机已经有了播放软件。如果没有,需要另外下载一个播放软件;或者在手机 browser 中内置一个 player 。
----------------------
参考URL:
http://www.sd.chinaunicom.com/city/weifang/tsyw/file5.html
http://www.9192.net/new/article.asp?id=607
http://www.mogood.com/tec_show.asp?id=147

    
最新技术文章:
▪Android开发之登录验证实例教程
▪Android开发之注册登录方法示例
▪Android获取手机SIM卡运营商信息的方法
▪Android实现将已发送的短信写入短信数据库的...
▪Android发送短信功能代码
▪Android根据电话号码获得联系人头像实例代码
▪Android中GPS定位的用法实例
▪Android实现退出时关闭所有Activity的方法
▪Android实现文件的分割和组装
▪Android录音应用实例教程
▪Android双击返回键退出程序的实现方法
▪Android实现侦听电池状态显示、电量及充电动...
▪Android获取当前已连接的wifi信号强度的方法
▪Android实现动态显示或隐藏密码输入框的内容
▪根据USER-AGENT判断手机类型并跳转到相应的app...
▪Android Touch事件分发过程详解
▪Android中实现为TextView添加多个可点击的文本
▪Android程序设计之AIDL实例详解
▪Android显式启动与隐式启动Activity的区别介绍
▪Android按钮单击事件的四种常用写法总结
▪Android消息处理机制Looper和Handler详解
▪Android实现Back功能代码片段总结
▪Android实用的代码片段 常用代码总结
▪Android实现弹出键盘的方法
▪Android中通过view方式获取当前Activity的屏幕截...
▪Android提高之自定义Menu(TabMenu)实现方法
▪Android提高之多方向抽屉实现方法
▪Android提高之MediaPlayer播放网络音频的实现方法...
▪Android提高之MediaPlayer播放网络视频的实现方法...
▪Android提高之手游转电视游戏的模拟操控
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3