我想使用android意图发送电子邮件。除了选择发送电子邮件的电子邮件应用程序,在发送到字段中获取空值,但是我检查空值但似乎我无法检测到字符串为空时,每件事情都运行良好。任何人都可以帮我解决这个问题。
if (emailAddress[0]!=null && !emailAddress[0].isEmpty()) {
Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType("text/plain");
intent.putExtra(Intent.EXTRA_EMAIL, emailAddress);
intent.putExtra(Intent.EXTRA_SUBJECT,
getResources().getString(R.string.email_sub));
// intent.putExtra(Intent.EXTRA_TEXT, "I'm email body.");
startActivity(Intent.createChooser(intent, "Send Email"));
答案 0 :(得分:2)
使用等于()或 equalsingorecase();
检查字符串String[] emailAddress = new String[10];
emailAddress[0]="asdfasdfasdfasdf";
if (emailAddress[0]!=null && !emailAddress[0].isEmpty())
{
System.err.println("asddddddd " +emailAddress[0] );
}
答案 1 :(得分:2)
尝试使用此语法检测null和空字符串
if(!TextUtils.isEmpty(emailAddress[0]))
答案 2 :(得分:0)
您可以使用TextUtils.isEmpty(CharSequence str)方法检测String
是空还是空
答案 3 :(得分:0)
TextUtils.isEmpty(charSequence char)用于null String如果它不起作用,则检查if(emailAddress!= null),因为emailAddress [0]位置值为null,那么你的数组也是null。
答案 4 :(得分:0)
它可能对你有所帮助..
你可以使用2以下的任何一个
if (emailAddress[0].toString().equals(""))
或
if (emailAddress[0].toString().length() > 0)
答案 5 :(得分:0)
字符串不能为空。 AFAIK Intent.EXTRA_EMAIL将String数组作为第二个参数。
试试这个。
String[] addressArray = {"add1@mail.com", "a2@mail.com"};
//some lines...
intent.putExtra(Intent.EXTRA_EMAIL, addressArray);