編輯: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 UI設計與開發教程 引導界面(五)實現應用程序只啟動一次引導界面
這篇文章算是對整個引導界面開發專題的一個終結了吧,個人覺得大部分的引導界面基本上都是千篇一律 的,只要熟練掌握了一個,基本上也就沒什麼好說的了,要是在今後的開發中遇到了
Android GUI系統之SurfaceFlinger(3)
Android中的本地窗口FramebufferNativewindow 1.1 Android中的本地窗口在OpenGL的學習過程中,我們不斷提及&ldquo
Android自定義View之仿QQ等級天數進度
最近一直都在看自定義View這一塊。差不多一個星期了吧。這個星期堅持每天更新博客,感覺自己的技術也有點突破,對自定義View的計算也有了更深的認識。今天坐地鐵玩手機的時候
Android測試教程(14):ActivityInstrumentationTestCase2示例
ActivityInstrumentationTestCase2 用來測試單個的Activity,被測試的Activity可以使用InstrumentationTestC