周末休息,这次我们继上次内容继续。上一篇内容我们讲述的是一些准备工作。下载两个javamail.jar和activation.jar文件,然后再BuildPath~

言归正传,为了展示效果,在这里我申请了一个实验的新浪邮箱。

接下来我们就每一个.class文件分类介绍,以及每一个XXXXXactivity.class对应的layout布局文件(.xml)

1.Welcome.java

1.1 界面图如下:

界面效果图 控件功能藐视

两个EditText控件:

txtEmailAddress:输入用户名

txtPWD:输入密码

一个Button

btnOK:跳转到下一个界面,并且将两个txt的数据进行存储。

1.2layout布局代码(welcome.xml)如下:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" > <View
android:layout_width="wrap_content"
android:layout_height="200px" /> <EditText
android:id="@+id/txtEmailAddress"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Email Address" /> <EditText
android:id="@+id/txtPWD"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Password"
android:inputType="textPassword" /> <requestFocus /> <View
android:id="@+id/view"
android:layout_width="wrap_content"
android:layout_height="50px" /> <Button
android:id="@+id/btnOK"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="登录邮箱" /> </LinearLayout>

1.3welcome.java代码,界面中有一个“登录邮箱”的按钮,在这里我想要做的效果是点击按钮,可以将两个EditText中的内容保存起来,用sharedPreference来做出效果。

package mi.email.activity;

import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException; import mi.learn.com.R;
import android.app.Activity;
import android.app.Dialog;
import android.app.ProgressDialog;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.os.Bundle;
import android.util.Log;
import android.view.Gravity;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast; public class Welcome extends Activity { private EditText txtEmailAddress;
private EditText txtPWD;
private Button btnOK;
private Button btnRead; private static final String SAVE_INFORMATION = "save_information"; @Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.welcome); txtEmailAddress = (EditText) findViewById(R.id.txtEmailAddress);
txtPWD = (EditText) findViewById(R.id.txtPWD);
btnOK = (Button) findViewById(R.id.btnOK); // 给EditText进行 初始化付值,以方便运行程序
txtEmailAddress.setText("javamail_android@sina.com");
txtPWD.setText("javamail_android");
       btnOK.setOnClickListener(new OnClickListener() {
public void onClick(View v) { // 获得编辑器
SharedPreferences.Editor editor = getSharedPreferences(SAVE_INFORMATION, MODE_WORLD_WRITEABLE).edit();
// 将EditText文本内容添加到编辑器
editor.putString("save", txtEmailAddress.getText().toString() + ";" + txtPWD.getText().toString());
// 提交编辑器内容
editor.commit();
// 定义Intent,实现点击按钮,进行界面跳转
Intent intent = new Intent();
intent.setClass(Welcome.this, ReceiveAndSend.class);
startActivity(intent);
}
}); } }

2.ReceiveAndSend.java

2.1我们通过名字不难看出它的功能是:收邮件以及发送邮件。这里用点击按钮的方式来实现效果。

界面图 按钮功能描述

  • ReceiveEmail:点击按钮跳转到收信箱界面(ReceiveList.java)
  • SendEmail:点击按钮进入到发送邮件的界面(SendMail.java)

界面比较简单,在这就不弄布局代码了.

2.2ReceiveAndSend.java ,功能较为简单,按钮触发事件,登录到另外所需要的界面。(收邮件和发邮件)

package mi.email.activity;

import mi.learn.com.R;
import android.app.Activity;
import android.app.Dialog;
import android.app.ProgressDialog;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button; public class ReceiveAndSend extends Activity {
private Button btnReceiveEmail;
private Button btnSendEmail; protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.receive_send);
btnReceiveEmail = (Button) findViewById(R.id.btnReceiveEmail);
btnSendEmail = (Button) findViewById(R.id.btnSendEmail);
btnReceiveEmail.setOnClickListener(new OnClickListener() { public void onClick(View v) {
// TODO Auto-generated method stub
Intent intent_second = new Intent();
intent_second.setClass(ReceiveAndSend.this, ReceiveList.class);
showDialog(0);//显示进度条对话框
startActivity(intent_second);
}
}); btnSendEmail.setOnClickListener(new OnClickListener() { public void onClick(View v) {
// TODO Auto-generated method stub
Intent intent_third=new Intent();
intent_third.setClass(ReceiveAndSend.this, SendMail.class);
showDialog(0);//显示进度条对话框'
startActivity(intent_third);
}
}); } protected Dialog onCreateDialog(int id) {// 显示网络连接Dialog
ProgressDialog dialog = new ProgressDialog(this);
dialog.setTitle("请稍候。。。");
dialog.setIndeterminate(true);
dialog.setMessage("程序正在加载。。。");
return dialog;
} }

Ps:在下面的两篇文章中,介绍基于javamail的邮件接收和发送。

Android 基于Android的手机邮件收发(JavaMail)之二( Welcome.java 和 ReceiveAndSend.java )的更多相关文章

  1. Android 基于Android的手机邮件收发(JavaMail)之三(邮件接收)

    初次做这个程序的时候,是仿照着网上别人的程序做的.因为本人比较菜,是一个新手,以前的基础知识没有学好,所以尽管有了别人的代码但是还是不知道怎么在界面上显示出它的效果来,废话不多少,现在就贴出我的参考程 ...

  2. Android 基于Android的手机邮件收发(JavaMail)之四(邮件的发送)

    上一个邮件的接受,因为不当操作,保存未完成,一切东西都得从头开始那就先从邮件发送来吧. 先下我们做一个较为简单的邮件发送 以下是源代码:相信看过上篇文章所给连接的人,对于javamail应该都有了一定 ...

  3. Android 基于Android的手机邮件收发(JavaMail)之一(准备工作)

    界面一共是五个界面,分别是welcomeActivity,ReceiveAndSendActivity,ReceiveListActivity,SendMailActivity,MailDetails ...

  4. Android基于mAppWidget实现手绘地图(二)--概要

    离线地图是一张被切成类似瓷砖般格子图像组成,这些被切开的格子组织成多个缩放级别.缩放级别是从0开始.0这个缩放级别,地图图像的尺寸为1*1像素.在每下一个缩放级别,图像尺寸则会两倍递增. 每个地图都是 ...

  5. 【转】 Android 基于google Zxing实现对手机中的二维码进行扫描--不错

    原文网址:http://blog.csdn.net/xiaanming/article/details/14450809 转载请注明出处:http://blog.csdn.net/xiaanming/ ...

  6. Android 基于google Zxing实现对手机中的二维码进行扫描

    转载请注明出处:http://blog.csdn.net/xiaanming/article/details/14450809 有时候我们有这样子的需求,需要扫描手机中有二维码的的图片,所以今天实现的 ...

  7. Android基于XMPP的即时通讯2-文件传输

    本文是在上一篇博文Android基于XMPP的即时通讯1-基本对话的基础上,添加新的功能,文件传输 1.初始化文件传输管理类 public static FileTransferManager get ...

  8. Android 基于google Zxing实现二维码、条形码扫描,仿微信二维码扫描效果

      Android 高手进阶(21)  版权声明:本文为博主原创文章,未经博主允许不得转载. 转载请注明出处:http://blog.csdn.net/xiaanming/article/detail ...

  9. 基于Android 平台简易即时通讯的研究与设计[转]

    摘要:论文简单介绍Android 平台的特性,主要阐述了基于Android 平台简易即时通讯(IM)的作用和功能以及实现方法.(复杂的通讯如引入视频音频等可以考虑AnyChat SDK~)关键词:An ...

随机推荐

  1. Extjs DOM操作的几个类

    Extjs提供了非常完善的DOM操作方法,可以方便的操作DOM.另外Extjs还可以方便的查询DOM元素,并把这些DOM元素封装成Ext.Element对象,通过Element对象我们可以操作DOM元 ...

  2. Android版:验证手机号码的正则表达式 (转)

    /**  * 验证手机格式  */  public static boolean isMobileNO(String mobiles) {      /*     移动:134.135.136.137 ...

  3. jq点击显示,再点击隐藏

    每次都会遇到的问题: <script> $("button").click(function(){ if($(".div").css("d ...

  4. nfs的挂载方法

    对于很多嵌入式驱动开发者,要进行很多次调试,如果nfs搭建不起来,那么对开发是很不方便的.经过三天,我终于把自己编的内核下载到开发板,并实现了nfs文件系统的挂载.今天把过程写下来. 思路 一 编译a ...

  5. winform公共标签和常用属性

    公共控件 1.Button(按钮): Enabled :确定是否启用控件 Visible:确定控件是否可见 2.CheckBox(多选项) CheckListBox -(多选项列表)可用CheckBo ...

  6. 对JavaScript中异步同步机制以及线程深入了解

    今天在网上看到各种对Js异步同步单线程多线程的讨论 经过前辈们的洗礼 加上鄙人小小的理解 就来纸上谈兵一下吧~ Js本身就是单线程的 至于为什么Js是单线程的 那就要追溯到Js的历史了 总而言之 由于 ...

  7. 浏览器-03 WebKit 渲染1

    WebKit是一个渲染引擎,而不是一个浏览器; DOM是对HTML或者XML等文档的一种结构化表示方法,通过这种方式,用户可以通过提供标准的接口来访问页面中的任何元素的相关属性,并可对DOM进行相应的 ...

  8. 【Oracle】oracle利用正则表达式拆分IP地址

    使用oracle提供的regexp_substr()函数,对将IPV4地址分成4段: select v.ip as ip_address, regexp_substr(v.ip,,) as A, re ...

  9. Bungee Jumping[HDU1155]

    Bungee JumpingTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total ...

  10. ZeroMQ接口函数之 :zmq_disconnect - 断开一个socket的连接

    ZeroMQ 官方地址 :http://api.zeromq.org/4-0:zmq_disconnect zmq_disconnect(3) ØMQ Manual - ØMQ/3.2.5 Name ...