2012-04-02 3 views
-1

連絡先APIを使用する電話、メール、郵便番号などのすべての許可されたタイプを連絡先アプリケーションのドロップダウンに似たものにするにはどうすればいいですか? TYPE_RADIO、TYPE_TELEX、TYPE_TTY_TDD、TYPE_WORK_MOBILE、TYPE_WORK_PAGER、TYPE_HOME、TYPE_MOBILE、TYPE_WORK、TYPE_FAX_WORK、TYPE_FAX_HOME、TYPE_PAGER、TYPE_OTHER、TYPE_CALLBACK、TYPE_CAR、TYPE_COMPANY_MAIN、TYPE_ISDN、TYPE_MAIN、TYPE_OTHER_FAX - 例えば電話のためのドロップダウンに私はこれらの見たいです、TYPE_ASSISTANT、TYPE_MMSはそれぞれのラベルに正しく翻訳されています。同様に電子メールなどのために。今質問が明確になることを願っています。事前にお手伝いをしておりますandroidの連絡先APIを使用する許可されたタイプ

答えて

1

私は何の反応も得られなかったので、これをやり終えました...電話の種類を取得するためのサンプルコード。私は、ソースを編集するのではなく、タイプの将来の追加が自動的に世話される場合に、よりエレガントな方法があることを期待していました。

public void createPhoneTypes() { 

    phoneTypes = new ArrayList<Integer>(); 
    phoneTypes.add(ContactsContract.CommonDataKinds.Phone.TYPE_ASSISTANT); 
    phoneTypes.add(ContactsContract.CommonDataKinds.Phone.TYPE_CALLBACK); 
    phoneTypes.add(ContactsContract.CommonDataKinds.Phone.TYPE_CAR); 
    phoneTypes 
      .add(ContactsContract.CommonDataKinds.Phone.TYPE_COMPANY_MAIN); 
    phoneTypes.add(ContactsContract.CommonDataKinds.Phone.TYPE_FAX_HOME); 
    phoneTypes.add(ContactsContract.CommonDataKinds.Phone.TYPE_FAX_WORK); 
    phoneTypes.add(ContactsContract.CommonDataKinds.Phone.TYPE_HOME); 
    phoneTypes.add(ContactsContract.CommonDataKinds.Phone.TYPE_ISDN); 
    phoneTypes.add(ContactsContract.CommonDataKinds.Phone.TYPE_MAIN); 
    phoneTypes.add(ContactsContract.CommonDataKinds.Phone.TYPE_MMS); 
    phoneTypes.add(ContactsContract.CommonDataKinds.Phone.TYPE_MOBILE); 
    phoneTypes.add(ContactsContract.CommonDataKinds.Phone.TYPE_OTHER); 
    phoneTypes.add(ContactsContract.CommonDataKinds.Phone.TYPE_OTHER_FAX); 
    phoneTypes.add(ContactsContract.CommonDataKinds.Phone.TYPE_PAGER); 
    phoneTypes.add(ContactsContract.CommonDataKinds.Phone.TYPE_RADIO); 
    phoneTypes.add(ContactsContract.CommonDataKinds.Phone.TYPE_TELEX); 
    phoneTypes.add(ContactsContract.CommonDataKinds.Phone.TYPE_TTY_TDD); 
    phoneTypes.add(ContactsContract.CommonDataKinds.Phone.TYPE_WORK); 
    phoneTypes.add(ContactsContract.CommonDataKinds.Phone.TYPE_WORK_MOBILE); 
    phoneTypes.add(ContactsContract.CommonDataKinds.Phone.TYPE_WORK_PAGER); 
    phoneTypes.add(ContactsContract.CommonDataKinds.Phone.TYPE_CUSTOM); 

} 



public String[] getAllPhoneTypeLabels() { 
    String[] stypes = new String[phoneTypes.size()]; 
    for (int i=0; i<phoneTypes.size(); i++) { 
     stypes[i] = ContactsContract.CommonDataKinds.Phone.getTypeLabel(context.getResources(), phoneTypes.get(i), "").toString(); 
    } 
    return stypes; 
} 
関連する問題