Android 如何从输入字段发送电子邮件-我的代码调试

Android 如何从输入字段发送电子邮件-我的代码调试,android,eclipse,Android,Eclipse,我似乎在这里遇到了一个问题。。我有两个编辑文本框和一个按钮。当我点击按钮时,它会给我一个选项,告诉我如何发送消息,但是它不会捕获我的输入,而是会发出一条奇怪的消息,说这是一个Testandroid.widget。EditText@47b84299android.widget.EditText@47b8f0d9。它也不会发送电子邮件并填写主题标题 这是我的密码 package com.emailmetest; import android.app.Activity; import android

我似乎在这里遇到了一个问题。。我有两个编辑文本框和一个按钮。当我点击按钮时,它会给我一个选项,告诉我如何发送消息,但是它不会捕获我的输入,而是会发出一条奇怪的消息,说这是一个Testandroid.widget。EditText@47b84299android.widget.EditText@47b8f0d9。它也不会发送电子邮件并填写主题标题

这是我的密码

package com.emailmetest;

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.TextView;
import android.widget.Toast;

public class Activity1 extends Activity implements OnClickListener {
    Button sendemail;
    TextView input1, input2;

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        sendemail =(Button)findViewById(R.id.sendemail);
        input1 = (TextView)findViewById(R.id.input1);
        input2 = (TextView)findViewById(R.id.input2);
        sendemail.setOnClickListener(this);
    }

    @Override
    public void onClick(View arg0) {
        // TODO Auto-generated method stub
        Intent i = new Intent(Intent.ACTION_SEND);
        i.setType("text/plain");
        i.putExtra(Intent.EXTRA_EMAIL  , new String[]{"test@hotmail.com"});
        i.putExtra(Intent.EXTRA_SUBJECT, "subject of email");
        i.putExtra(Intent.EXTRA_TEXT   , "\nThis is a Test" + input1 + input2);
        try {
            startActivity(Intent.createChooser(i, "Send via..."));
        } catch (android.content.ActivityNotFoundException ex) {
            Toast.makeText(this.getApplicationContext(), "There are no email clients installed.", Toast.LENGTH_SHORT).show();
        }
    }
}
尝试:

尝试:


顺便问一下,如何在两个输入之间包含一个空格?它们似乎粘在一起..您可以使用i.putExtra(Intent.EXTRA_TEXT,String.format(“这是一个测试%s%s”,input1.getText().toString(),input2.getText().toString());谢谢@John Boker的成功!下一步,你可能会想多动脑筋。。。如果要附加服务器上的文件,如何将pdf文件也附加到电子邮件中?在缓冲文件中。不想将其存储在手机上,因为内容可能会频繁更改。不确定它是否会像这样工作,但您可以尝试类似i.putExtra(Intent.EXTRA_STREAM,Uri.parse(fileUrl))@john Boker它给出了一个错误描述资源路径位置类型Uri类型中的方法解析(字符串)不适用于参数()Activity1.java/Email Me/src/com/emailmetest第37行java问题顺便问一下,我如何在两个输入之间包含一个空格?它们似乎粘在一起..您可以使用i.putExtra(Intent.EXTRA_TEXT,String.format(“这是一个测试%s%s”,input1.getText().toString(),input2.getText().toString());谢谢@John Boker的成功!下一步,你可能会想多动脑筋。。。如果要附加服务器上的文件,如何将pdf文件也附加到电子邮件中?在缓冲文件中。不想将其存储在手机上,因为内容可能会频繁更改。不确定它是否会像这样工作,但您可以尝试类似i.putExtra(Intent.EXTRA_STREAM,Uri.parse(fileUrl))@john Boker it给出了错误描述资源路径位置类型类型Uri类型中的方法解析(字符串)不适用于参数()Activity1.java/Email Me/src/com/emailmetest第37行java问题
i.putExtra(Intent.EXTRA_TEXT   , "\nThis is a Test" + input1.getText().toString() + input2.getText().toString());