天天看点

The method setClass(Context, Class<?>) in the type Intent is not applicable for the arguments (GameV

在当前短信内容的activity中写  

         Bundle bun = new Bundle();

        bun.putString("message", "短信内容");

        Intent in = new Intent(第二个Activity.this, 第一个Activity.class);

        in.putExtras(bun);

在要传内容的activity中写:

           Bundle bu = this.getIntent().getExtras();

           String message = bu.getString("message");//获取短信内容

public class SMSReceiver extends BroadcastReceiver

{

    /*当收到短信时,就会触发此方法*/

    public void onReceive(Context context, Intent intent)

    {

        Bundle bundle = intent.getExtras();

        Object messages[] = (Object[]) bundle.get("pdus");

        SmsMessage smsMessage[] = new SmsMessage[messages.length];

        for (int n = 0; n < messages.length; n++)

        {

            smsMessage[n] = SmsMessage.createFromPdu((byte[]) messages[n]);

        }

        //调用显示短信内容的Activity

        Intent intent = new Intent();

        intent.setClass(this, MyView.class);

        intent.putExtra("sms_body", smsMessage[0].getMessageBody());

        startActivity(intent);

    }

}

回复三楼,按您所说的改了,

//调用显示短信内容的Activity

Intent intent2 = new Intent();

intent2.setClass(this, Activity01.class);

                   //setClass出错:The method setClass(Context, Class<?>) in the type Intent is not applicable for the arguments (SMSReceiver, Class<Activity01>)

intent2.putExtra("sms_body", smsMessage[0].getMessageBody());

startActivity(intent2);

                //startActivity出错:The method startActivity(Intent) is undefined for the type SMSReceiver

继续阅读