下午好,我正在尝试创建一个应用程序的一部分,让用户回答应用程序本身的一些问题,当点击按钮发送时,创建一个自动电子邮件正文,其中包含应用程序中填写的信息。例如:name:bernardo;因此,在电子邮件的正文中,“name:bernardo”将出现,而用户无需再次写入。目前,我只能将电子邮件捕获的文本设置为“name:null”,我不知道如何才能正确捕获应用程序中填写的信息。问题似乎要么在 public void pegarTexto
或在 emailIntent.putExtra (android.content.Intent.EXTRA_TEXT
,我肯定是做错了什么,但我无法辨认。如果有人能帮忙,我将不胜感激。如果问题不清楚,我请你在评论中留下如何改进的建议,因为我是初学者!代码如下:
public class DiagnosticoFragment extends Fragment {
EditText editTextNome, editTextTelefone, editTextEmail, editTextEndereco, editTextBairro, editTextCidade, editTextEstado, editTextHorario, editTextComoConheceu, editTextConteMais;
String nome, telefone, email, endereco, bairro, cidade, estado, horario, comoconheceu, contemais;
public DiagnosticoFragment() {
// Required empty public constructor
}
public void pegarTexto(View view){
editTextNome = view.findViewById(R.id.editTextNome);
editTextTelefone = view.findViewById(R.id.editTextTelefone);
editTextEmail = view.findViewById(R.id.editTextEmail);
editTextEndereco = view.findViewById(R.id.editTextEndereco);
editTextBairro = view.findViewById(R.id.editTextBairro);
editTextCidade = view.findViewById(R.id.editTextCidade);
editTextEstado = view.findViewById(R.id.editTextEstado);
editTextHorario = view.findViewById(R.id.editTextHorario);
editTextComoConheceu = view.findViewById(R.id.editTextComoConheceu);
editTextConteMais = view.findViewById(R.id.editTextConteMais);
nome = editTextNome.getText().toString();
telefone = editTextTelefone.getText().toString();
email = editTextEmail.getText().toString();
endereco = editTextEndereco.getText().toString();
bairro = editTextBairro.getText().toString();
cidade = editTextCidade.getText().toString();
estado = editTextEstado.getText().toString();
horario = editTextHorario.getText().toString();
comoconheceu = editTextComoConheceu.getText().toString();
contemais = editTextConteMais.getText().toString();
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
View view = inflater.inflate(R.layout.fragment_diagnostico, container, false);
Button btnSendEmail = view.findViewById(R.id.btnSendEmail);
btnSendEmail.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
// cria um intent
Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND);
// define o email especifico pre definido
String[] recipients = new String[]{
"contato@metaconsultoria.com"
};
// insere o email no extra
emailIntent.putExtra(android.content.Intent.EXTRA_EMAIL, recipients);
// define um assunto
emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, "Possível projeto.");
// define o conteúdo do email
emailIntent.putExtra(android.content.Intent.EXTRA_TEXT, "Nome: " + nome + "Telefone: " + telefone + "E-mail: " + email + "Endereço: " + endereco + "Bairro: " + bairro
+ "Cidade: " + cidade + "Estado: " + estado + "Horário: " + horario + "Como conheceu a Meta: " + comoconheceu + "Conte mais: " + contemais );
// definido o tipo
emailIntent.setType("text/plain");
// inicia o intent
startActivity(Intent.createChooser(emailIntent, "Enviar email..."));
}
});
return view;
}
}
2条答案
按热度按时间mnowg1ta1#
嘿,
参考这个我用它来给自己发邮件
比较一下,看看哪里不对!!
rpppsulh2#
我建议使用f10逐个地进入每一行,以确定值为null的位置。不过,您需要在执行此操作之前设置一个断点。