按钮单击没有响应

时间:2012-09-03 10:46:35

标签: java android email

我正在尝试为电子邮件活动设置按钮但是使用当前代码我没有错误但是当我点击按钮时没有响应

Email.java

public class Email extends Activity implements View.OnClickListener {

    EditText personsEmail, intro, personsName, stupidThings, hatefulAction,
            outro;
    String emailAdd, beginning, name, stupidAction, hatefulAct, out;
    Button sendEmail;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        setContentView(R.layout.email);
        initializeVars();
        sendEmail.setOnClickListener(this);
    }

    private void initializeVars() {
        // TODO Auto-generated method stub
        personsEmail = (EditText) findViewById(R.id.etEmails);
        intro = (EditText) findViewById(R.id.etIntro);
        personsName = (EditText) findViewById(R.id.etName);
        stupidThings = (EditText) findViewById(R.id.etThings);
        hatefulAction = (EditText) findViewById(R.id.etAction);
        outro = (EditText) findViewById(R.id.etOutro);
        sendEmail = (Button) findViewById(R.id.bSentEmail);
    }

    public void onClick(View v) {
        // TODO Auto-generated method stub

        convertEditTextVarsIntoStringsAndYesThisIsAMethodWeCreated();
        String emailaddress[] = { emailAdd };
        String message = "Well hello "
                + name
                + " I just wanted to say "
                + beginning
                + ".  Not only that but I hate when you "
                + stupidAction
                + ", that just really makes me crazy.  I just want to make you "
                + hatefulAct
                + ".  Welp, thats all I wanted to chit-chatter about, oh and"
                + out
                + "Oh and you could visit facebook www.facebook.com/"
                + '\n' + "PS. I think I love you...    ";

        Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND);
        emailIntent.putExtra(android.content.Intent.EXTRA_EMAIL, emailaddress);
        emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT,"I hate you");
        emailIntent.setType("Plain/Text");
        emailIntent.putExtra(android.content.Intent.EXTRA_TEXT,message);
        startActivity(emailIntent);

    }


    private void convertEditTextVarsIntoStringsAndYesThisIsAMethodWeCreated() {
        // TODO Auto-generated method stub
        emailAdd = personsEmail.getText().toString();
        beginning = intro.getText().toString();
        name = personsName.getText().toString();
        stupidAction = stupidThings.getText().toString();
        hatefulAct = hatefulAction.getText().toString();
        out = outro.getText().toString();
    }

    @Override
    protected void onPause() {
        // TODO Auto-generated method stub
        super.onPause();
        finish();
    }    
}

Menu.java

public class Menu extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        //Setting Up Button

        Button but1 =(Button) findViewById(R.id.bEmail);

         but1.setOnClickListener(new View.OnClickListener() {

            public void onClick(View arg0) {
                // TODO Auto-generated method stub
                startActivity(new Intent("com.guess.guessme.EMAIL"));
            }
        });

    }

    @Override
    protected void onPause() {
        // TODO Auto-generated method stub
        super.onPause();
    }    
}

5 个答案:

答案 0 :(得分:1)

您可以使用此代码。它可以解决您的问题: startActivity(new Intent(Menu.this, Email .class));

答案 1 :(得分:0)

尝试将您的emailIntent.setType("Plain/Text");更改为emailIntent.setType("text/html"); 并进行以下更改可能会对您有所帮助

startActivity(Intent.createChooser(emailIntent, "Send mail..."));

答案 2 :(得分:0)

试试这个:

startActivity(new Intent("com.guess.guessme.Email"));

并确保电子邮件活动也在您的清单文件中说明。

答案 3 :(得分:0)

试试吧

 emailIntent.setType("message/rfc822");
 Email.this.startActivity(Intent.createChooser(email, "Choose an Email client :");

答案 4 :(得分:0)

尝试这样做 -

看来你正在实施错误的倾听者。尝试导入OnClickListener而不是View.OnClickListener,如下所示 -

public class Email extends Activity implements OnClickListener

以下代码。

public void onClick(View v) {
    // TODO Auto-generated method stub

switch(v.getId())
{

case R.id.bSentEmail:

    convertEditTextVarsIntoStringsAndYesThisIsAMethodWeCreated();
    String emailaddress[] = { emailAdd };
    String message = "Well hello "
            + name
            + " I just wanted to say "
            + beginning
            + ".  Not only that but I hate when you "
            + stupidAction
            + ", that just really makes me crazy.  I just want to make you "
            + hatefulAct
            + ".  Welp, thats all I wanted to chit-chatter about, oh and"
            + out
            + "Oh and you could visit facebook www.facebook.com/"
            + '\n' + "PS. I think I love you...    ";

    Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND);
    emailIntent.putExtra(android.content.Intent.EXTRA_EMAIL, emailaddress);
    emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT,"I hate you");
    emailIntent.setType("Plain/Text");
    emailIntent.putExtra(android.content.Intent.EXTRA_TEXT,message);
    startActivity(emailIntent);

break;
}

}