2010-01-16 29 views
4

我有一個活動讓用戶選擇一個電話號碼。當然,我希望我的班級能夠記住所選聯繫人的ID,因此我將它保存在一個班級字段中。但是當onActivityResult方法返回時,我的類變量被重置。這裏是我想要做的事:當方法返回時,onActivityResult中設置的類變量被重置

Intent intent = new Intent(Intent.ACTION_PICK, People.CONTENT_URI); 
    startActivityForResult(intent, PICK_CONTACT); 

    ... 

    public void onActivityResult(int reqCode, int resultCode, Intent intent){ 
     super.onActivityResult(reqCode, resultCode, intent);  
     switch(reqCode){ 
      case(PICK_CONTACT): 
       if(resultCode == Activity.RESULT_OK){ 
        Uri contactData = intent.getData(); 
        Cursor c = managedQuery(contactData, null, null, null, null); 
        if(c.moveToFirst()){ 
         contactName = c.getString(c.getColumnIndexOrThrow(People.NAME)); 
         contactId = c.getInt(c.getColumnIndexOrThrow(People._ID)); 

     break; 

當我設置這種方法中的斷點,爲聯繫人姓名和使用ContactID值是如我所料,但一旦該方法返回的值以某種方式得到重置爲其默認值。顯然我錯過了一些東西,但我不確定我在做什麼錯或遺忘。

謝謝!

Iva

+0

想知道,如果你在開發模式下運行,也許Rails的每次重裝類的定義? – 2010-01-26 17:58:29

回答