﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-努力创造未来！-随笔分类-Android</title><link>http://www.blogjava.net/pdw2009/category/36612.html</link><description>本站不再更新，欢迎光临 
&lt;a href="http://php.11519.net/5jblog"&gt;java开发技术网&lt;/a&gt;</description><language>zh-cn</language><lastBuildDate>Fri, 20 Aug 2010 10:26:44 GMT</lastBuildDate><pubDate>Fri, 20 Aug 2010 10:26:44 GMT</pubDate><ttl>60</ttl><item><title>android 弹出框</title><link>http://www.blogjava.net/pdw2009/archive/2009/04/22/267053.html</link><dc:creator>有猫相伴的日子</dc:creator><author>有猫相伴的日子</author><pubDate>Wed, 22 Apr 2009 14:31:00 GMT</pubDate><guid>http://www.blogjava.net/pdw2009/archive/2009/04/22/267053.html</guid><wfw:comment>http://www.blogjava.net/pdw2009/comments/267053.html</wfw:comment><comments>http://www.blogjava.net/pdw2009/archive/2009/04/22/267053.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/pdw2009/comments/commentRss/267053.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/pdw2009/services/trackbacks/267053.html</trackback:ping><description><![CDATA[<br />
<script type="text/javascript"><!--
branchr_client_id = 'i5x9suaaicn0eb41ts2q2823gn';
branchr_ad_width = 468;
branchr_ad_height = 60;
branchr_ad_format = 11;
//--></script>
<script type="text/javascript" src="http://static.branchr.com/serve.js?1248290004"></script>
<br />

代码片段<br />
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;QuitApp()&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;AlertDialog.Builder(Frm_Addbills.</span><span style="color: #0000ff">this</span><span style="color: #000000">).setTitle(</span><span style="color: #000000">"</span><span style="color: #000000">提示</span><span style="color: #000000">"</span><span style="color: #000000">).setMessage(<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">确定退出?</span><span style="color: #000000">"</span><span style="color: #000000">).setIcon(R.drawable.quit).setPositiveButton(</span><span style="color: #000000">"</span><span style="color: #000000">确定</span><span style="color: #000000">"</span><span style="color: #000000">,<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;DialogInterface.OnClickListener()&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;onClick(DialogInterface&nbsp;dialog,&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;whichButton)&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;billdb.close();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;finish();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}).setNegativeButton(</span><span style="color: #000000">"</span><span style="color: #000000">取消</span><span style="color: #000000">"</span><span style="color: #000000">,<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;DialogInterface.OnClickListener()&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;onClick(DialogInterface&nbsp;dialog,&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;whichButton)&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}).show();<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;}</span></div>
<br />
copy from ColaBox_source&nbsp; 未完待续..<br />
<br /><img src ="http://www.blogjava.net/pdw2009/aggbug/267053.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/pdw2009/" target="_blank">有猫相伴的日子</a> 2009-04-22 22:31 <a href="http://www.blogjava.net/pdw2009/archive/2009/04/22/267053.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>android 中使用sqLite例子</title><link>http://www.blogjava.net/pdw2009/archive/2009/04/19/266460.html</link><dc:creator>有猫相伴的日子</dc:creator><author>有猫相伴的日子</author><pubDate>Sun, 19 Apr 2009 14:20:00 GMT</pubDate><guid>http://www.blogjava.net/pdw2009/archive/2009/04/19/266460.html</guid><wfw:comment>http://www.blogjava.net/pdw2009/comments/266460.html</wfw:comment><comments>http://www.blogjava.net/pdw2009/archive/2009/04/19/266460.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/pdw2009/comments/commentRss/266460.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/pdw2009/services/trackbacks/266460.html</trackback:ping><description><![CDATA[<p>今晚写了个sqLite的应用例子，粘一下代码，就不详细详述了。<br />
</p>
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><span style="color: #0000ff">package</span><span style="color: #000000">&nbsp;com.peidw.demo;<br />
<br />
</span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;java.io.FileNotFoundException;<br />
<br />
</span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;android.content.Context;<br />
</span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;android.database.sqlite.SQLiteDatabase;<br />
</span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;android.database.sqlite.SQLiteOpenHelper;<br />
</span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;android.database.sqlite.SQLiteDatabase.CursorFactory;<br />
</span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;android.util.Log;<br />
<br />
</span><span style="color: #008000">/**</span><span style="color: #008000"><br />
&nbsp;*&nbsp;数据库操作<br />
&nbsp;*&nbsp;</span><span style="color: #808080">@author</span><span style="color: #008000">&nbsp;peidw&nbsp;2009-04-06<br />
&nbsp;*<br />
&nbsp;</span><span style="color: #008000">*/</span><span style="color: #000000"><br />
</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">class</span><span style="color: #000000">&nbsp;DatabaseHelper&nbsp;</span><span style="color: #0000ff">extends</span><span style="color: #000000">&nbsp;SQLiteOpenHelper{<br />
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">private</span><span style="color: #000000">&nbsp;Context&nbsp;ctx&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">null</span><span style="color: #000000">;<br />
&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;DatabaseHelper(Context&nbsp;context,&nbsp;String&nbsp;name,&nbsp;CursorFactory&nbsp;factory,&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;version)&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">super</span><span style="color: #000000">(context,&nbsp;name,&nbsp;factory,&nbsp;version);<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;@Override<br />
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;onCreate(SQLiteDatabase&nbsp;arg0)&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;@Override<br />
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;onUpgrade(SQLiteDatabase&nbsp;arg0,&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;arg1,&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;arg2)&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;<br />
<br />
}<br />
</span></div>
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><span style="color: #0000ff">package</span><span style="color: #000000">&nbsp;com.peidw.demo;<br />
<br />
</span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;java.util.</span><span style="color: #000000">*</span><span style="color: #000000">;<br />
</span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;android.app.</span><span style="color: #000000">*</span><span style="color: #000000">;<br />
</span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;android.content.Context;<br />
</span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;android.database.Cursor;<br />
</span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;android.database.sqlite.SQLiteDatabase;<br />
</span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;android.database.sqlite.SQLiteOpenHelper;<br />
</span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;android.database.sqlite.SQLiteDatabase.CursorFactory;<br />
</span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;android.os.</span><span style="color: #000000">*</span><span style="color: #000000">;<br />
</span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;android.util.</span><span style="color: #000000">*</span><span style="color: #000000">;<br />
<br />
</span><span style="color: #008000">/**</span><span style="color: #008000"><br />
&nbsp;*&nbsp;操作数据库例子<br />
&nbsp;*&nbsp;</span><span style="color: #808080">@author</span><span style="color: #008000">&nbsp;peidw&nbsp;2009-04-19<br />
&nbsp;*<br />
&nbsp;</span><span style="color: #008000">*/</span><span style="color: #000000"><br />
</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">class</span><span style="color: #000000">&nbsp;ConnectionProvider&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">private</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">static</span><span style="color: #000000">&nbsp;&nbsp;SQLiteDatabase&nbsp;db</span><span style="color: #000000">=</span><span style="color: #0000ff">null</span><span style="color: #000000">;<br />
&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;&nbsp;ConnectionProvider(Context&nbsp;ctx)&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">&nbsp;(db</span><span style="color: #000000">==</span><span style="color: #0000ff">null</span><span style="color: #000000">){<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Log.v(</span><span style="color: #000000">"</span><span style="color: #000000">ConnectionProvider</span><span style="color: #000000">"</span><span style="color: #000000">,</span><span style="color: #000000">"</span><span style="color: #000000">ctx=</span><span style="color: #000000">"</span><span style="color: #000000">+</span><span style="color: #000000">ctx.toString());<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;DatabaseHelper&nbsp;dbHelper</span><span style="color: #000000">=</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;DatabaseHelper(ctx,</span><span style="color: #000000">"</span><span style="color: #000000">StudDB</span><span style="color: #000000">"</span><span style="color: #000000">,&nbsp;</span><span style="color: #0000ff">null</span><span style="color: #000000">,</span><span style="color: #000000">1</span><span style="color: #000000">);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;db</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;dbHelper.getWritableDatabase();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;SQLiteDatabase&nbsp;getConnection&nbsp;(){<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;db;<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;closeConnection&nbsp;(){<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;db.close();<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">/**</span><span style="color: #008000"><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;判断表是否存在<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span style="color: #808080">@param</span><span style="color: #008000">&nbsp;tablename<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span style="color: #808080">@return</span><span style="color: #008000"><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">*/</span><span style="color: #000000"><br />
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">boolean</span><span style="color: #000000">&nbsp;isTableExits(String&nbsp;tablename){<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">boolean</span><span style="color: #000000">&nbsp;result</span><span style="color: #000000">=</span><span style="color: #0000ff">false</span><span style="color: #000000">;</span><span style="color: #008000">//</span><span style="color: #008000">表示不存在</span><span style="color: #008000"><br />
</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;str</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">select&nbsp;count(*)&nbsp;xcount&nbsp;&nbsp;from&nbsp;sqlite_master&nbsp;where&nbsp;table='</span><span style="color: #000000">"</span><span style="color: #000000">+</span><span style="color: #000000">tablename</span><span style="color: #000000">+</span><span style="color: #000000">"</span><span style="color: #000000">'</span><span style="color: #000000">"</span><span style="color: #000000">;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Cursor&nbsp;c&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;db.rawQuery(str,</span><span style="color: #0000ff">null</span><span style="color: #000000">);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;xcount</span><span style="color: #000000">=</span><span style="color: #000000">c.getColumnIndex(</span><span style="color: #000000">"</span><span style="color: #000000">xcount</span><span style="color: #000000">"</span><span style="color: #000000">);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">(xcount</span><span style="color: #000000">!=</span><span style="color: #000000">0</span><span style="color: #000000">){<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;result</span><span style="color: #000000">=</span><span style="color: #0000ff">true</span><span style="color: #000000">;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">表存在</span><span style="color: #008000"><br />
</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;result;<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
}<br />
</span></div>
<br />
在程序中操作数所的代码片段<br />
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><span style="color: #000000"><br />
&nbsp;ConnectionProvider&nbsp;cp</span><span style="color: #000000">=</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;ConnectionProvider(</span><span style="color: #0000ff">this</span><span style="color: #000000">.getBaseContext());<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">&nbsp;if(cp.isTableExits(TABLE_NAME)){</span><span style="color: #008000">//</span><span style="color: #008000">表已存在</span><span style="color: #008000"><br />
</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;createTable(cp);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;queryTable(cp);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">&nbsp;}else{</span><span style="color: #008000">//</span><span style="color: #008000">表不存在<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;createTable();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">&nbsp;}</span><span style="color: #008000"><br />
</span><span style="color: #000000"><br />
<br />
<br />
</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;createTable(&nbsp;ConnectionProvider&nbsp;cp){<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SQLiteDatabase&nbsp;db</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;cp.getConnection();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;db.execSQL(</span><span style="color: #000000">"</span><span style="color: #000000">CREATE&nbsp;TABLE&nbsp;IF&nbsp;NOT&nbsp;EXISTS&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;TABLE_NAME&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;(</span><span style="color: #000000">"</span><span style="color: #000000"><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">stud_no</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;TEXT,</span><span style="color: #000000">"</span><span style="color: #000000"><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">stud_name</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;TEXT</span><span style="color: #000000">"</span><span style="color: #000000"><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">);</span><span style="color: #000000">"</span><span style="color: #000000">);<br />
&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;sql_1&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">insert&nbsp;into&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;TABLE_NAME&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;(stud_no,&nbsp;stud_name)&nbsp;values('S777',&nbsp;'Lily&nbsp;Chang');</span><span style="color: #000000">"</span><span style="color: #000000">;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;sql_2&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">insert&nbsp;into&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;TABLE_NAME&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;(stud_no,&nbsp;stud_name)&nbsp;values('S888',&nbsp;'Linda&nbsp;Lin');</span><span style="color: #000000">"</span><span style="color: #000000">;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;sql_3&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">insert&nbsp;into&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;TABLE_NAME&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;(stud_no,&nbsp;stud_name)&nbsp;values('S999',&nbsp;'Bruce&nbsp;Wang');</span><span style="color: #000000">"</span><span style="color: #000000">;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;db.execSQL(sql_1);&nbsp;db.execSQL(sql_2);&nbsp;db.execSQL(sql_3);<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;queryTable(ConnectionProvider&nbsp;cp){<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;str</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">select&nbsp;*&nbsp;from&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">+</span><span style="color: #000000">TABLE_NAME;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Cursor&nbsp;c&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">cp.getConnection().rawQuery(str,</span><span style="color: #0000ff">null</span><span style="color: #000000">);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Log.v(</span><span style="color: #000000">"</span><span style="color: #000000">loginactive</span><span style="color: #000000">"</span><span style="color: #000000">,</span><span style="color: #000000">"</span><span style="color: #000000">查询记录</span><span style="color: #000000">"</span><span style="color: #000000">);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Log.v(</span><span style="color: #000000">"</span><span style="color: #000000">loginactive</span><span style="color: #000000">"</span><span style="color: #000000">,String.valueOf(c.getCount())&nbsp;);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">(c</span><span style="color: #000000">!=</span><span style="color: #0000ff">null</span><span style="color: #000000">){<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;c.moveToFirst();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">while</span><span style="color: #000000">(</span><span style="color: #000000">!</span><span style="color: #000000">c.isLast()){<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Log.v(</span><span style="color: #000000">"</span><span style="color: #000000">loginactive</span><span style="color: #000000">"</span><span style="color: #000000">,</span><span style="color: #000000">"</span><span style="color: #000000">outp<img alt="" src="http://www.blogjava.net/Images/dot.gif" />.</span><span style="color: #000000">"</span><span style="color: #000000">);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;stud_no</span><span style="color: #000000">=</span><span style="color: #000000">c.getString(</span><span style="color: #000000">0</span><span style="color: #000000">);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;stud_name</span><span style="color: #000000">=</span><span style="color: #000000">c.getString(</span><span style="color: #000000">1</span><span style="color: #000000">);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(stud_no</span><span style="color: #000000">+</span><span style="color: #000000">"</span><span style="color: #000000">---------------</span><span style="color: #000000">"</span><span style="color: #000000">+</span><span style="color: #000000">stud_name);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Log.v(</span><span style="color: #000000">"</span><span style="color: #000000">loginactive</span><span style="color: #000000">"</span><span style="color: #000000">,stud_no</span><span style="color: #000000">+</span><span style="color: #000000">"</span><span style="color: #000000">---------------</span><span style="color: #000000">"</span><span style="color: #000000">+</span><span style="color: #000000">stud_name);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;c.moveToNext();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;}</span></div>
麻烦帮单击一次广告了 ！！！ <br />
<script type="text/javascript"><!--
branchr_client_id = 'i5x9suaaicn0eb41ts2q2823gn';
branchr_ad_width = 468;
branchr_ad_height = 60;
branchr_ad_format = 11;
//--></script> <script type="text/javascript" src="http://static.branchr.com/serve.js?1248290004"></script><br /><img src ="http://www.blogjava.net/pdw2009/aggbug/266460.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/pdw2009/" target="_blank">有猫相伴的日子</a> 2009-04-19 22:20 <a href="http://www.blogjava.net/pdw2009/archive/2009/04/19/266460.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Android布局(Layout)</title><link>http://www.blogjava.net/pdw2009/archive/2009/04/15/265850.html</link><dc:creator>有猫相伴的日子</dc:creator><author>有猫相伴的日子</author><pubDate>Wed, 15 Apr 2009 13:53:00 GMT</pubDate><guid>http://www.blogjava.net/pdw2009/archive/2009/04/15/265850.html</guid><wfw:comment>http://www.blogjava.net/pdw2009/comments/265850.html</wfw:comment><comments>http://www.blogjava.net/pdw2009/archive/2009/04/15/265850.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/pdw2009/comments/commentRss/265850.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/pdw2009/services/trackbacks/265850.html</trackback:ping><description><![CDATA[布局就像容器，里面可以装下很多控件。布局里面还可以套用其他的布局。这样就可以实现界面的多样化以及设计的灵活性。在这个界面中，我们应用了一个LinearLayout的布局，它是垂直向下扩展的 ，所以创建的布局XML文件，以<br />
&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"<br />
&nbsp;&nbsp;&nbsp; android:orientation="vertical"<br />
&nbsp;&nbsp;&nbsp; android:layout_width="fill_parent"<br />
&nbsp;&nbsp;&nbsp; android:layout_height="fill_parent"<br />
&nbsp;&nbsp;&nbsp; &gt;<br />
节点作为开头。一个布局容器里可以包括0或多个布局容器。LinearLayout线性的布局方式，要么上下，要么左右的添加控件，很常用<br />
<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; AbsoluteLayout可以让子元素指定准确的x/y坐标值，并显示在屏幕上。(0, 0)为左上角，当向下或向右移动时，坐标值将变大。AbsoluteLayout没有页边框，允许元素之间互相重叠（尽管不推荐）。我们通常不推荐使用AbsoluteLayout，除非你有正当理由要使用它，因为它使界面代码太过刚性，以至于在不同的设备上可能不能很好地工作。&nbsp;<br />
<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;RelativeLayout允许子元素指定他们相对于其它元素或父元素的位置（通过ID指定）。因此，你可以以右对齐，或上下，或置于屏幕中央的形式来排列两个元素。元素按顺序排列，因此如果第一个元素在屏幕的中央，那么相对于这个元素的其它元素将以屏幕中央的相对位置来排列。如果使用XML来指定这个layout，在你定义它之前，被关联的元素必须定义。 <br />
这是一个计数器的例子。<br />
<br />
&nbsp; FrameLayout是最简单的一个布局对象。它被定制为你屏幕上的一个空白备用区域，之后你可以在其中填充一个单一对象 — 比如，一张你要发布的图片。所有的子元素将会固定在屏幕的左上角；你不能为FrameLayout中的一个子元素指定一个位置。后一个子元素将会直接在前一个子元素之上进行覆盖填充，把它们部份或全部挡住（除非后一个子元素是透明的）。 <br />
<br />
http://blog.chinaunix.net/u2/86463/showart_1674836.html<br />
<br />
<br />
<img src ="http://www.blogjava.net/pdw2009/aggbug/265850.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/pdw2009/" target="_blank">有猫相伴的日子</a> 2009-04-15 21:53 <a href="http://www.blogjava.net/pdw2009/archive/2009/04/15/265850.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Android实现不同Active页面间的跳转</title><link>http://www.blogjava.net/pdw2009/archive/2009/04/13/265195.html</link><dc:creator>有猫相伴的日子</dc:creator><author>有猫相伴的日子</author><pubDate>Sun, 12 Apr 2009 16:40:00 GMT</pubDate><guid>http://www.blogjava.net/pdw2009/archive/2009/04/13/265195.html</guid><wfw:comment>http://www.blogjava.net/pdw2009/comments/265195.html</wfw:comment><comments>http://www.blogjava.net/pdw2009/archive/2009/04/13/265195.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/pdw2009/comments/commentRss/265195.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/pdw2009/services/trackbacks/265195.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Intent intent = new Intent();&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; intent.setClass(ErrorPageActive.this, LoginActive.class);&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;startActivity(intent);&nbsp;&nbsp; <br />
<br />
就这么简单，如果要把一个页面的参数带到另一个页面，则需要<br />
&nbsp;Bundle bundle = new Bundle();&nbsp;&nbsp;&nbsp;<br />
&nbsp;bundle.putString("USERNAME", et_username.getText().toString());&nbsp;&nbsp;&nbsp;<br />
intent.putExtras(bundle); <br />
<br />
通过以上三行代码现实，带参数跳转。
<img src ="http://www.blogjava.net/pdw2009/aggbug/265195.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/pdw2009/" target="_blank">有猫相伴的日子</a> 2009-04-13 00:40 <a href="http://www.blogjava.net/pdw2009/archive/2009/04/13/265195.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Android应用程序四大组件</title><link>http://www.blogjava.net/pdw2009/archive/2009/04/13/265193.html</link><dc:creator>有猫相伴的日子</dc:creator><author>有猫相伴的日子</author><pubDate>Sun, 12 Apr 2009 16:04:00 GMT</pubDate><guid>http://www.blogjava.net/pdw2009/archive/2009/04/13/265193.html</guid><wfw:comment>http://www.blogjava.net/pdw2009/comments/265193.html</wfw:comment><comments>http://www.blogjava.net/pdw2009/archive/2009/04/13/265193.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/pdw2009/comments/commentRss/265193.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/pdw2009/services/trackbacks/265193.html</trackback:ping><description><![CDATA[<p><span style="font-size: 14pt">对于一个Android应用程序来说，是由四种构造块组织而成的，这四种构造块如下：</span></p>
<p><span style="font-size: 14pt"><span style="font-size: 18pt"><span style="font-size: 14pt">&nbsp;&nbsp;&nbsp;&nbsp;Activity </span></span></span></p>
<p><span style="font-size: 14pt"><span style="font-size: 18pt"><span style="font-size: 14pt">&nbsp;&nbsp;&nbsp;&nbsp;Intent Receiver </span></span></span></p>
<p><span style="font-size: 14pt"><span style="font-size: 18pt"><span style="font-size: 14pt">&nbsp;&nbsp;&nbsp;&nbsp;Service </span></span></span></p>
<p><span style="font-size: 14pt"><span style="font-size: 18pt"><span style="font-size: 14pt">&nbsp;&nbsp;&nbsp;&nbsp;Content Provider </span></span></span></p>
<br />
<span style="font-size: 14pt"><span style="font-size: 18pt"><span style="font-size: 14pt">&nbsp; 但是，并不是每一个Android应用程序都需要这四种构造块，这不是必须的，某些时候，我们只需要这四种中的几种组合成我们的应用。 </span></span></span>
<p><span id="more-32"></p>
<p><span style="font-size: 14pt"><span style="font-size: 18pt"><span style="font-size: 14pt">&nbsp;&nbsp;&nbsp; 当我们明确了我们的应用需要哪些构造块后，我们就需要在AndroidManifest.xml中登记这些构造块的清单。这是一个XML配置文件，这个配置文件用于定义我们的应用程序的组件、组件的功能及必要条件等。这个配置文件是每个Android应用必需的。对于AndroidMainfest.xml的Schema，参考SDK包附带的文档。以下，我们对四种构造块做一些说明：</span></span></span></p>
<p><strong><span style="font-size: 14pt"><span style="font-size: 18pt"><span style="font-size: 14pt">一、Activity</span></span></span></strong></p>
<p><span style="font-size: 14pt"><span style="font-size: 18pt"><span style="font-size: 14pt">&nbsp;&nbsp;&nbsp; Activity是Android构造块中最基本的一种，在应用中，一个activity通常就是一个单独的屏幕。每一个activity都被实现为一个独立的类，并且继承于Activity这个基类。这个activity类将会显示由几个Views控件组成的用户接口，并对事件做出响应。大部份的应用都会包含多个的屏幕。例如，一个短消息应用程序将会有一个屏幕用于显示联系人列表，第二个屏幕用于写短消息，同时还会有用于浏览旧短消息及进行系统设置的屏幕。每一个这样的屏幕，就是一个activity。从一个屏幕导航到另一个屏幕是很简单的。在一些应用中，一个屏幕甚至会返回值给前一个屏幕。</span></span></span></p>
<p><span style="font-size: 14pt"><span style="font-size: 18pt"><span style="font-size: 14pt">&nbsp;&nbsp;&nbsp; 当一个新的屏幕打开后，前一个屏幕将会暂停，并保存在历史堆栈中。用户可以返回到历史堆栈中的前一个屏幕。当屏幕不再使用时，还可以从历史堆栈中删除。默认情况下，Android将会保留从主屏幕到每一个应用的运行屏幕。</span></span></span></p>
<p><span style="font-size: 14pt"><span style="font-size: 18pt"><span style="font-size: 14pt">&nbsp;&nbsp;&nbsp; Android使用了Intent这个特殊类，实现在屏幕与屏幕之间移动。Intent类用于描述一个应用将会做什么事。在Intent的描述结构中，有两个最重要的部分：动作和动作对应的数据。典型的动作类型有：MAIN（activity的门户）、VIEW、PICK、EDIT等。而动作对应的数据则以URI的形式进行表示。例如：要查看一个人的联系方式，你需要创建一个动作类型为VIEW的intent，以及一个表示这个人的URI。</span></span></span></p>
<p><span style="font-size: 14pt"><span style="font-size: 18pt"><span style="font-size: 14pt">&nbsp;&nbsp;&nbsp; 与之有关系的一个类叫IntentFilter。相对于intent是一个有效的做某事的请求，一个intent filter则用于描述一个activity（或者Intent Receiver）能够操作哪些intent。一个activity如果要显示一个人的联系方式时，需要声明一个IntentFilter，这个IntentFilter要知道怎么去处理VIEW动作和表示一个人的URI。IntentFilter需要在AndroidManifest.xml中定义。</span></span></span></p>
<p><span style="font-size: 14pt"><span style="font-size: 18pt"><span style="font-size: 14pt">&nbsp;&nbsp;&nbsp;通过解析各种intent，从一个屏幕导航到另一个屏幕是很简单的。当向前导航时，activity将会调用startActivity(Intent myIntent)方法。然后，系统会在所有安装的应用程序中定义的IntentFilter中查找，找到最匹配myIntent的Intent对应的activity。新的activity接收到myIntent的通知后，开始运行。当startActivity方法被调用将触发解析myIntent的动作，这个机制提供了两个关键好处：</span></span></span></p>
<p><span style="font-size: 14pt"><span style="font-size: 18pt"><span style="font-size: 14pt">&nbsp;&nbsp;&nbsp; A、Activities能够重复利用从其它组件中以Intent的形式产生的一个请求；</span></span></span></p>
<p><span style="font-size: 14pt"><span style="font-size: 18pt"><span style="font-size: 14pt">&nbsp;&nbsp;&nbsp; B、Activities可以在任何时候被一个具有相同IntentFilter的新的Activity取代。</span></span></span></p>
<p><strong><span style="font-size: 14pt"><span style="font-size: 18pt"><span style="font-size: 14pt">二、Intent Receiver</span></span></span></strong></p>
<p><span style="font-size: 14pt"><span style="font-size: 18pt"><span style="font-size: 14pt">&nbsp;&nbsp;&nbsp; 当你希望你的应用能够对一个外部的事件（如当电话呼入时，或者数据网络可用时，或者到了晚上时）做出响应，你可以使用一个Intent Receiver。虽然Intent Receiver在感兴趣的事件发生时，会使用NotificationManager通知用户，但它并不能生成一个UI。Intent Receiver在AndroidManifest.xml中注册，但也可以在代码中使用Context.registerReceiver()进行注册。当一个intent receiver被触发时，你的应用不必对请求调用intent receiver，系统会在需要的时候启动你的应用。各种应用还可以通过使用Context.broadcastIntent()将它们自己的intent receiver广播给其它应用程序。</span></span></span></p>
<p><strong><span style="font-size: 14pt"><span style="font-size: 18pt"><span style="font-size: 14pt">三、Service</span></span></span></strong></p>
<p><span style="font-size: 14pt"><span style="font-size: 18pt"><span style="font-size: 14pt">&nbsp;&nbsp;&nbsp; 一个Service是一段长生命周期的，没有用户界面的程序。比较好的一个例子就是一个正在从播放列表中播放歌曲的媒体播放器。在一个媒体播放器的应用中，应该会有多个activity，让使用者可以选择歌曲并播放歌曲。然而，音乐重放这个功能并没有对应的activity，因为使用者当然会认为在导航到其它屏幕时音乐应该还在播放的。在这个例子中，媒体播放器这个activity会使用Context.startService()来启动一个service，从而可以在后台保持音乐的播放。同时，系统也将保持这个service一直执行，直到这个service运行结束。另外，我们还可以通过使用Context.bindService()方法，连接到一个service上（如果这个service还没有运行将启动它）。当连接到一个service之后，我们还可以service提供的接口与它进行通讯。拿媒体播放器这个例子来说，我们还可以进行暂停、重播等操作。</span></span></span></p>
<p><strong><span style="font-size: 14pt"><span style="font-size: 18pt"><span style="font-size: 14pt">四、Content Provider</span></span></span></strong></p>
<p><span style="font-size: 14pt"><span style="font-size: 18pt"><span style="font-size: 14pt">&nbsp;&nbsp;&nbsp; 应用程序能够将它们的数据保存到文件中、SQL数据库中，甚至是任何有效的设备中。当你想将你的应用数据与其它的应用共享时，Content Provider将会很有用。一个Content Provider类实现了一组标准的方法，从而能够让其它的应用保存或读取此Content Provider处理的各种数据类型。</span></span></span></p>
<p><span style="font-size: 14pt"><span style="font-size: 18pt"><span style="font-size: 14pt">&nbsp;&nbsp;&nbsp; 更详细的Content Provider资料，可以参考附带文档中的Accessing Content Providers。<br />
<br />
五、Intent类<br />
&nbsp;&nbsp;&nbsp;&nbsp;Intent负责对应用中一次操作的动作、动作涉及数据、附加数据进行描述，Android则根据此Intent的描述，负责找到对应的组件，将 Intent传递给调用的组件，并完成组件的调用。因此，Intent在这里起着一个媒体中介的作用，专门提供组件互相调用的相关信息，实现调用者与被调 用者之间的解耦。<br />
</span></span></span></p>
</span>
<img src ="http://www.blogjava.net/pdw2009/aggbug/265193.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/pdw2009/" target="_blank">有猫相伴的日子</a> 2009-04-13 00:04 <a href="http://www.blogjava.net/pdw2009/archive/2009/04/13/265193.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>