C# 仅当条件为30或以上时调用方法
当条件C# 仅当条件为30或以上时调用方法,c#,C#,当条件v高于30时,它会继续在应用程序中发送短信。 但是,我希望它只发送1条短信,然后在v返回到29时重新发送短信,然后返回30 if(v >= 30) { do { var SmsMessenger = (CrossMessaging.Current.SmsMessenger); if(SmsMessenger.CanSendSmsInBackground) { SmsMessenger.Sen
v
高于30时,它会继续在应用程序中发送短信。
但是,我希望它只发送1条短信,然后在v
返回到29时重新发送短信,然后返回30
if(v >= 30)
{
do
{
var SmsMessenger = (CrossMessaging.Current.SmsMessenger);
if(SmsMessenger.CanSendSmsInBackground)
{
SmsMessenger.SendSmsInBackground("+000000", "Test")
}
}
while(((currentLocation.Speed * 3600) / 1000) != 20);
}
您可以使用标志来调用消息一次
bool IsSmsSended = false;
if(v >= 30 && !IsSmsSended) {
do {
var SmsMessenger= (CrossMessaging.Current.SmsMessenger);
if(SmsMessenger.CanSendSmsInBackground){
SmsMessenger.SendSmsInBackground("+000000","Test")
}
}
while(((currentLocation.Speed * 3600) /1000) !=20);
IsSmsSended = true;
}else if(v < 30){
IsSmsSended = false;
}
bool issmssend=false;
如果(v>=30&&!ISSMSEND){
做{
var SmsMessenger=(CrossMessaging.Current.SmsMessenger);
if(SmsMessenger.CanSendSmsInBackground){
SmsMessenger.SendSmsInBackground(“+000000”,“测试”)
}
}
而(((currentLocation.Speed*3600)/1000)!=20);
issmssend=true;
}否则,如果(v<30){
issmssend=false;
}
如果该值低于30,则必须重置ISSMSSEND。看看这个,如果是的话
注意:将ISSMSEND设置为全局。您可以使用一个标志来调用消息一次
bool IsSmsSended = false;
if(v >= 30 && !IsSmsSended) {
do {
var SmsMessenger= (CrossMessaging.Current.SmsMessenger);
if(SmsMessenger.CanSendSmsInBackground){
SmsMessenger.SendSmsInBackground("+000000","Test")
}
}
while(((currentLocation.Speed * 3600) /1000) !=20);
IsSmsSended = true;
}else if(v < 30){
IsSmsSended = false;
}
bool issmssend=false;
如果(v>=30&&!ISSMSEND){
做{
var SmsMessenger=(CrossMessaging.Current.SmsMessenger);
if(SmsMessenger.CanSendSmsInBackground){
SmsMessenger.SendSmsInBackground(“+000000”,“测试”)
}
}
而(((currentLocation.Speed*3600)/1000)!=20);
issmssend=true;
}否则,如果(v<30){
issmssend=false;
}
如果该值低于30,则必须重置ISSMSSEND。看看这个,如果是的话
附言:让ISSMSSED全球化