如何在Android中使用每个for循环

时间:2013-04-23 05:42:35

标签: java android

我正在实现短时间发送多个号码的短信,我正在使用每个循环。当我在for循环中调用sendSms方法时,它会将Number的更改类型显示为String。我已检查if条件中的每个数字是否数字长度大于1然后发送短信。这是我的代码。

btnSendSms=(Button)findViewById(R.id.button1_SendSms);
btnSendSms.setOnClickListener(new OnClickListener() {
    @Override
    public void onClick(View arg0) {
        String message="Hi HElooo";
        String[] number={strCellNo1,strCellNo2,strCellNo3,strCellNo4,strCellNo5};
        Log.e("String Array","->"+number);
        for(int i=0 ; i<number.length ; i++) {
            if(i==0) {
                sendSMS(number, stringMessage);
            }
        }
    }
});

public void sendSMS(String number, String message) {
    String SENT = "SMS_SENT";
    String DELIVERED = "SMS_DELIVERED";
    PendingIntent sentPI = PendingIntent.getBroadcast(this, 0, new Intent(SENT), 0);
    PendingIntent deliveredPI = PendingIntent.getBroadcast(this, 0, new Intent(DELIVERED), 0);
    // SmsManager sms = SmsManager.getDefault();
    SmsManager sms = SmsManager.getDefault();
    sms.sendTextMessage(number, null, message, sentPI, deliveredPI);  
}

@Override
protected void onStop() {
    unregisterReceiver(sendBroadCastReciever);
    unregisterReceiver(deliveryBroadCastReciever);
    super.onStop();
}

1 个答案:

答案 0 :(得分:4)

您需要提及String数组中要使用的number的索引。

for(int i=0 ; i<number.length ; i++){
    if(i==0){
        sendSMS(number[i], stringMessage); // mentioned the index here.
    }
}

for循环不是必需的,除非您有一个备用流(else中可能的for语句)。