2014-04-29 51 views
0

我想創建一個OnClick,將允許您刪除聯繫人,但我有這個錯誤 - 「在ContactPickerTester類型中的方法removeContact(Context,String)不適用爲參數()「。該方法是不適用的參數()

我是一個非常新的程序員,所以我認爲它很明顯,我做錯了。

Button deleteContactButton = (Button) findViewById(R.id.button4); 
     deleteContactButton.setOnClickListener(new OnClickListener() { 
      public void onClick(View v) { 
       removeContact(); 
      } 
     }); 
    } 

       private void removeContact(Context context, String phone) { 
        //context.getContentResolver().delete(Contacts.Phones.CONTENT_URI, phone, null); 
        context.getContentResolver().delete(Contacts.Phones.CONTENT_URI, 
          Contacts.PhonesColumns.NUMBER+"=?", new String[] {phone}); 
       } 
+3

removeContact有兩個參數,上下文和電話號碼。您不提供這些,導致編譯時間錯誤 – Blackbelt

+0

Derp ...謝謝!有一件事,我希望onclick打開所有聯繫人並刪除給用戶的選擇。如果給電話號碼賦值,那麼它會刪除給定的號碼,不是? – user3466400

回答

0

錯誤位於OnClickListener已分配給deleteContactButton

兩個參數應該傳遞給removeContact()(上下文和電話號碼),並已通過了沒有,所以編譯錯誤:

Button deleteContactButton = (Button) findViewById(R.id.button4); 
    deleteContactButton.setOnClickListener(new OnClickListener() { 
     public void onClick(View v) { 
      removeContact(); // <-- There should be two parameteres here 
     } 
    }); 
} 
+0

謝謝!但我不確定他們應該具備什麼價值,因爲我想讓onClick打開聯繫人並允許用戶選擇要刪除的聯繫人。添加電話值意味着只刪除所述電話值,不是? – user3466400

+0

嗯,你應該知道,你是那個已經執行'removeContact()'的人:-)但是看代碼,是的,這顯然會發生。例如,你現在要做的就是改變'removeContact()'的代碼,例如在'Dialog'中打開聯繫人,並建議刪除它或取消這個動作。 – Shlublu

+0

謝謝你,我會研究這個:) – user3466400

相關問題