ListView
カスタム経由でオフィスの場所をロードしているAndroidアプリケーションがありますAdapter
。
それぞれの内部ListViewItem
にImageView
は、電子メール アイコンである があり、ユーザーがオフィスの場所に送信する電子メールを作成できるようにするカスタムOnClickListener
を にバインドしました。ImageView
ユーザーが自分のデバイスにある電子メールアプリケーションから選択できるようにしたいのでIntent.CreateChooser()
、カスタムで次のように使用しましOnClickListener
た:
private class EmailOnClickListener implements OnClickListener {
private Context context;
private String email;
public EmailOnClickListener(Context context, String email) {
this.context = context;
this.email = email;
}
@Override
public void onClick(View v) {
Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType("message/rfc822");
intent.putExtra(android.content.Intent.EXTRA_EMAIL, new String[] {email});
intent.putExtra(android.content.Intent.EXTRA_SUBJECT, "Test Subject");
context.startActivity(Intent.createChooser(intent, "Send mail..."));
}
}
OnClickListener
次のように、カスタムを介してカスタムをバインドしてAdapter
います。
ImageView email = (ImageView) v.findViewById(R.id.btnEmail);
email.setOnClickListener(new EmailOnClickListener(context, contact.getEmail()));
現在、Android 2.3 の HTC Desire HD でこれをテストしています。デバイスに Gmail とデフォルトのメールがありますが、メール アイコンをタップすると、セレクターは表示されず、Gmail に直接読み込まれます。 .
セレクターが表示されないのはなぜですか?