// ---sends an SMS message to another device---
private void sendSMS(String phoneNumber, String message) {
int i;
SmsManager sms = SmsManager.getDefault();
int amount = 10; // just making 10 the default if the EditText has an
// invalid value
try {
amount = Integer.parseInt(smsamount.getText().toString());
} catch (NumberFormatException smsamount) {
}
for (i = 0; i < amount; i++) {
if (amount < 100)
sms.sendTextMessage(phoneNumber, null, message, null, null);
else
Toast.makeText(getBaseContext(),
"Please enter an amount less than 100.",
Toast.LENGTH_SHORT).show();
}
}
Run Code Online (Sandbox Code Playgroud)
这有效,但吐司在屏幕上停留超过一分钟.即使退出应用程序,它仍保留在屏幕上.我尝试在发送消息的过程之前更改toast,但强制关闭应用程序.这是我将要使用这里的黑客的东西:http://thinkandroid.wordpress.com/2010/02/19/indefinite-toast-hack/使其缩短?
如果您一次调用N*1秒Toasts,那么它们将按顺序显示最多~N秒,就像在您的内循环中一样.在这里你得到amount * SHORT_DURATION
了祝酒词的总持续时间.
if (amount < 100)
在进入循环之前进行状态检查.这更正确,更有效,并且只显示一个Toast.
归档时间: |
|
查看次数: |
1046 次 |
最近记录: |