File : res/layout/main.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/linearLayout1" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <TextView android:id="@+id/textViewPhoneNo" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="To : " android:textAppearance="?android:attr/textAppearanceLarge" /> <EditText android:id="@+id/editTextTo" android:layout_width="fill_parent" android:layout_height="wrap_content" android:inputType="textEmailAddress" > <requestFocus /> </EditText> <TextView android:id="@+id/textViewSubject" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Subject : " android:textAppearance="?android:attr/textAppearanceLarge" /> <EditText android:id="@+id/editTextSubject" android:layout_width="fill_parent" android:layout_height="wrap_content" > </EditText> <TextView android:id="@+id/textViewMessage" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Message : " android:textAppearance="?android:attr/textAppearanceLarge" /> <EditText android:id="@+id/editTextMessage" android:layout_width="fill_parent" android:layout_height="wrap_content" android:gravity="top" android:inputType="textMultiLine" android:lines="5" /> <Button android:id="@+id/buttonSend" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="Send" /> </LinearLayout>
Full activity class to send an Email. Read theonClick()
method, it should be self-explanatory.package com.mkyong.android; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.EditText; public class SendEmailActivity extends Activity { Button buttonSend; EditText textTo; EditText textSubject; EditText textMessage; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); buttonSend = (Button) findViewById(R.id.buttonSend); textTo = (EditText) findViewById(R.id.editTextTo); textSubject = (EditText) findViewById(R.id.editTextSubject); textMessage = (EditText) findViewById(R.id.editTextMessage); buttonSend.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { String to = textTo.getText().toString(); String subject = textSubject.getText().toString(); String message = textMessage.getText().toString(); Intent email = new Intent(Intent.ACTION_SEND); email.putExtra(Intent.EXTRA_EMAIL, new String[]{ to}); //email.putExtra(Intent.EXTRA_CC, new String[]{ to}); //email.putExtra(Intent.EXTRA_BCC, new String[]{to}); email.putExtra(Intent.EXTRA_SUBJECT, subject); email.putExtra(Intent.EXTRA_TEXT, message); //need this to prompts email client only email.setType("message/rfc822"); startActivity(Intent.createChooser(email, "Choose an Email client :")); } }); } }
See default scree, fill in the detail, and click on the “send” button.It will prompts your existing Email client to select.In this case, i selected Gmail, and all previous filled in detail will be populated to Gmail client automatically.Note Android does not provide API to send Email directly, you have to call the existing Email client to send Email.
No comments:
Post a Comment