編輯:Android開發教程
startActivity可以啟動一個新的Activity,這個新的Activity與啟動它Activity之間相對獨立,不會返回給調用它的 Activity如何結果。在寫應用時,有時需要從其它Activity返回結果。Receive Result顯示了這個用法。
startActivityForResult 使用方法和startActivity類似,重要的是startActivityForResult可以從被調用的Activity返回 結果。GET_CODE為Request code,當子Activity返回結果時可以根據這個Request Code來處理Activity返回的結果。
// Definition of the one requestCode we use for receiving resuls. static final private int GET_CODE = 0; private OnClickListener mGetListener = new OnClickListener() { public void onClick(View v) { // Start the activity whose result we want to retrieve. The // result will come back with request code GET_CODE. Intent intent = new Intent(ReceiveResult.this, SendResult.class); startActivityForResult(intent, GET_CODE); } };
當子Activity結束時,調用setResult 來設置返回結果。Receive Result例子中涉及了兩個Activity, ReceiveResult為父Activity,SendResult為子Activity返回用戶選項,返回的結果在ReceiveResult中顯示。
SendResult 返 回結果的代碼如下:
private OnClickListener mCorkyListener = new OnClickListener() { public void onClick(View v) { // To send a result, simply call setResult() before your // activity is finished. setResult(RESULT_OK, (new Intent()).setAction("Corky!")); finish(); } }; private OnClickListener mVioletListener = new OnClickListener() { public void onClick(View v) { // To send a result, simply call setResult() before your // activity is finished. setResult(RESULT_OK, (new Intent()).setAction("Violet!")); finish(); } };
當從子Activity返回結果後,父Activity通過定義onActivityResult來處理子Activity返回的結果。
protected void onActivityResult(int requestCode, int resultCode, Intent data) { // You can use the requestCode to select between multiple child // activities you may have started. Here there is only one thing // we launch. if (requestCode == GET_CODE) { // We will be adding to our text. ... } }
這篇文章算是對整個引導界面開發專題的一個終結了吧,個人覺得大部分的引導界面基本上都是千篇一律 的,只要熟練掌握了一個,基本上也就沒什麼好說的了,要是在今後的開發中遇到了
Android中的本地窗口FramebufferNativewindow 1.1 Android中的本地窗口在OpenGL的學習過程中,我們不斷提及&ldquo
最近一直都在看自定義View這一塊。差不多一個星期了吧。這個星期堅持每天更新博客,感覺自己的技術也有點突破,對自定義View的計算也有了更深的認識。今天坐地鐵玩手機的時候
ActivityInstrumentationTestCase2 用來測試單個的Activity,被測試的Activity可以使用InstrumentationTestC