2012-09-03 105 views
0

我试图建立电子邮件活动,但与当前的代码键我没有错误,但是当我按一下按钮没有任何反应上按钮没有反应点击

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(); 
    }  
} 
+1

试图给这条线 - 'sendEmail.setOnClickListener(本);'你的方法里面'initializeVars()' – Praveenkumar

+3

和你的问题是... – mKorbel

+0

@mKorbel我已经设置了整个布局,一切都完成了,但是当我点击'电子邮件我'按钮时我没有任何反应,它导致我无处可寻 –

回答

0

试图改变自己从emailIntent.setType("Plain/Text");emailIntent.setType("text/html"); 并进行以下更改可能会帮助你

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

试试这个:

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

并确保,电子邮件活动在您的清单文件规定了。

+0

我也试过了!不工作,是的,显然我在Manifest –

+0

交叉检查哦,试试这个:'startActivity(new Intent(this,com.guess.guessme.Email.class))'。这是因为对于您使用的Intent构造函数,字符串参数不是活动类的名称,而是一个Action,您必须在Manifest中指定等。为了调用您自己的项目的活动,建议的方法很多简单。 – Ridcully

0

尝试

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

尝试做这样的 -

看来你正在实施错了听众。试试导入OnClickListener而不是View.OnClickListener像下面 -

public class Email extends Activity implements OnClickListener 

与下面的代码。

+0

@Lakshay Narula还有一件事?你在你的设备或模拟器中尝试这个吗? – Praveenkumar

+0

我首先在我的DEVICE上尝试导致其电子邮件活动,然后在设备上它不工作,然后在模拟器上。我的第一个项目有EXACT相同的编码,并在设备上正常工作 –

+0

@LakshayNarula其实,哪一个不工作。你不能重定向到'Email.java'类吗? – Praveenkumar

1

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

+0

未发生配对:( –