周末休息,这次我们继上次内容继续。上一篇内容我们讲述的是一些准备工作。下载两个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. python学习笔记(1)

    python简介 python是Guido van Rossum在圣诞节打发无聊的时间时候写出来的语言. python是解释性的语言. python是动态类型的语言. python是强类型定义语言(高 ...

  2. Power BI for Office 365(八)共享查询

    在Power Query中,你不但可以搜索线上的数据,也可以把自己的数据发布到线上供其它人检索.Power Query通过Power BI站点提供了这种内置的分享功能.在Excel中,Anna打开了她 ...

  3. Windows 8.1安装 Vmware10

    之前在windows 8上安装的Vmware 9.0,已经激活了用的蛮好,可是自从上次自动更新系统到windows 8.1后,启动虚拟机时提示要激活 使用各种激活码与注册机都无效,就算注册表信息丢失但 ...

  4. 取两个DataTable的交集,删除重复数据

    /// <summary> /// 取两个DataTable的交集,删除重复数据 /// </summary> /// <param name="sourceD ...

  5. HTTP POST请求报文格式分析与Java实现文件上传

    时间 2014-12-11 12:41:43  CSDN博客 原文  http://blog.csdn.net/bboyfeiyu/article/details/41863951 主题 HTTPHt ...

  6. Android 自定义View合集

    自定义控件学习 https://github.com/GcsSloop/AndroidNote/tree/master/CustomView 小良自定义控件合集 https://github.com/ ...

  7. STM32解密STM32F103芯片解密STM32F103R6单片机破解多少钱?

    STM32解密STM32F103芯片解密STM32F103R6单片机破解多少钱? STM32F系列单片机芯片解密型号: STM32F100  |  STM32F101  |  STM32F102  | ...

  8. Official online document, install svn server in centOS

    http://www.krizna.com/centos/install-svn-server-on-centos-6/

  9. Xcode UUID查询

    打开终端,输入: defaults read /Applications/Xcode.app/Contents/Info DVTPlugInCompatibilityUUID

  10. 安装dede显示dir的解决办法

    1.遇见安装页面出现dir 2.你这个肯定是已经安装过了的程序,把install文件夹下的index.html删掉,,你再看看install文件夹下有没有install_lock.txt 和index ...