如何在Android中使用按钮打开另一个活动

问题描述:

所以下面的代码没有执行正确的功能它被称为做 它应该打开一个新的活动,只需点击一个按钮,而不是 没有任何反应按钮显示并没有错误 和这个愚蠢的网站要求我解释多一点这样的IM正要类型的随机废话,直到它让我发表我的问题如何在Android中使用按钮打开另一个活动

package com.Tripp.thebasics; 

import android.app.Activity; 
import android.content.Intent; 
import android.os.Bundle; 
import android.view.View; 
import android.widget.Button; 

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 the button references 
     Button jokeD = (Button) findViewById(R.id.jokeoftheday); 
     Button jokeC = (Button) findViewById(R.id.jokecatagories); 

     jokeD.setOnClickListener(new View.OnClickListener() { 

      @Override 
      public void onClick(View v) { 

       // TODO Auto-generated method stub 
       startActivity(new Intent(Menu.this, JokeOfTheDay.class)); 

      } 
     }); 

     jokeC.setOnClickListener(new View.OnClickListener() { 

      @Override 
      public void onClick(View v) { 

       // TODO Auto-generated method stub 
       Intent s = new Intent("com.Tripp.thebasics.JOKECATAGORIES"); 
       startActivity(s); 
      } 
     }); 
    } 

    @Override 
    protected void onPause() { 

     // TODO Auto-generated method stub 
     super.onPause(); 
    } 
} 
+0

是否按照新的改变清单文件活动? – MeshBoy 2015-03-25 08:05:53

+0

如果你是Android新手,那么通过这个网站,http://www.skholingua.com/android-basic/android-app-components/activity-intents,它可能会帮助你很多学习 – chiru 2015-03-25 08:44:18

+0

是的清单文件被更改 – 2015-03-25 23:31:51

帮助创建一个intent,这样你可以调用单击按钮时的活动。还需要帮助的清单文件中声明的活动:

myBtn.setOnClickListener() { 
     public void onClick() { 
      Intent intent = new Intent(this, SecondActivity.class); 
      startActivity(intent); 
     } 
    } 
+0

欢迎来到Stack Overflow!你能否请你的答案给出解释为什么这个代码回答这个问题?仅限代码答案[不鼓励](http://meta.stackexchange.com/questions/148272),因为他们没有教导解决方案。 – DavidPostill 2015-03-25 08:37:03

+0

好吧@ DavidPostill – 2015-03-25 08:48:56

+0

你甚至没有setOnClickListener方法中所需的参数 – 2015-03-25 23:30:27

  1. 创建新的活动独立的XML和Java文件。

  2. 在点击监听器上创建像下面这样的按钮。 Button.setOnClickListener() { public void onClick() { Intent myintent = new Intent(this, newactivity.class); startActivity(myintent); } }

3.增加Android上的manifest.xml文件新的活动。

<application>

`<activity android:name=".classname" ></activity>` 

</application

如果你想要更多的澄清,告诉我

+0

是的我在使用“this”时发生错误,它说构造函数的意图是未定义的或某事。这也不是主要的活动类这是一个单独的类名为“菜单” – 2015-03-25 23:41:02

jokeD.setOnClickListener(new View.OnClickListener() { 

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

      startActivity(new Intent(this, JokeOfTheDay.class)); 

      } 
     }); 

并确保您有在AndroidManifest.xml新类:

<activity 
      android:name=".youractivitypackagename.JokeOfTheDay" 
      android:label="JokeOfTheDay" > 
</activity> 

编辑: 请在此处查看有关如何在Manifest中声明活动的更好解释,因为它取决于您声明包的方式:http://developer.android.com/guide/topics/manifest/manifest-intro.html

如果你的包为您的类,例如,com.example.project.Test,那么你应该有以下的,在标签内:

<activity 
       android:name="com.example.project.Test.JokeOfTheDay" 
       android:label="JokeOfTheDay" > 
</activity> 
+0

你的类命名空间?我会在哪里得到? – 2015-03-25 23:28:26

+0

这里是它的外观,现在 – 2015-03-25 23:28:40

+0

意图过滤器> – 2015-03-25 23:28:56