2013-03-10 57 views
1

我開發了一個應用程序,其中某個地方有一個圖像按鈕。Android:停止意圖並返回主活動

ImageButton buttoncalllog = (ImageButton)findViewById(R.id.imageButton2); 
    buttoncalllog.setOnClickListener(new View.OnClickListener() 
    { 

     @Override 
     public void onClick(View v) 
     { 
      Intent showCallLog = new Intent(); 
      showCallLog.setAction(Intent.ACTION_VIEW); 
      showCallLog.setType(CallLog.Calls.CONTENT_TYPE); 
      startActivity(showCallLog); 
      finish(); 
     } 
    }); 

這個按鈕,當它被點擊時,它打開聯繫人列表。問題是我不能回到我的應用程序!當我按下返回按鈕到我的設備時,沒有任何反應......如果我殺了我的應用程序並再次打開它,第一個屏幕又是聯繫人列表! 我必須重新啓動設備或重新安裝應用程序! 有什麼幫助嗎?

編輯:

我刪除調用finish(),但仍然是不打算回來時,我按回車鍵。我更新的代碼:

ImageButton buttoncalllog = (ImageButton)findViewById(R.id.imageButton2); 
    buttoncalllog.setOnClickListener(new View.OnClickListener() 
    { 

     @Override 
     public void onClick(View v) 
     { 
      Intent showCallLog = new Intent(); 
      showCallLog.setAction(Intent.ACTION_VIEW); 
      showCallLog.setType(CallLog.Calls.CONTENT_TYPE); 
      startActivity(showCallLog); 

     } 
    }); 

回答

3

不要叫你的活動finish()啓動Intent後。

finish()是用來殺人的活動,只有當你想完成您的活動應該被調用。由於您在啓動Intent後正在殺死您的應用程序,因此當您按下返回按鈕時,應用程序無法返回。

ImageButton buttoncalllog = (ImageButton)findViewById(R.id.imageButton2); 
    buttoncalllog.setOnClickListener(new View.OnClickListener() 
    { 

     @Override 
     public void onClick(View v) 
     { 
      Intent showCallLog = new Intent(); 
      showCallLog.setAction(Intent.ACTION_VIEW); 
      showCallLog.setType(CallLog.Calls.CONTENT_TYPE); 
      startActivity(showCallLog); 
     } 
    }); 
+0

我已經刪除了finish()調用,但是當我按下返回按鈕時沒有任何事情發生。 我已經更新了我的第一篇文章。 – user2116122 2013-03-10 07:53:39

+0

你在通話記錄活動中做什麼?只需點擊「後退按鈕」應該可以回到上一個活動。你是否在通話記錄中選擇了任何內容? – Swayam 2013-03-10 08:01:46

+0

請看看你的帖子,看看應該如何編輯問題來更新。您需要保留原始查詢並在EDIT部分添加更新。它有助於保持所發佈答案的完整性和有效性。 – Swayam 2013-03-10 08:03:01

0

最前一頁不叫finish

在另外你應該叫startActivityForResult爲了接收用戶選擇的選擇

更多信息閱讀here

+0

我刪除了完成()但仍然不能返回到我的應用程序...我也不需要從聯繫人列表中讀取選定的聯繫人,所以startActivity應該工作,對不對? – user2116122 2013-03-10 07:58:48

+0

是的,它應該沒問題 – 2013-03-10 08:47:01

0

你檢查你的清單文件?您可能需要確保爲應用程序定義了父級活動。在您的活動標記下檢查<meta-data android:value="com.example.parentactivity"