2013-01-08 120 views
1

所以我在Eclipse中做过的,在布局中我有:activity_main.xml和activity_main2.xml。我试图在activity_main.xml中创建一个按钮和点击去activity_main2.xmlAndroid按钮点击转到另一个xml页面

这样的屏幕在com.example.myfirstapp

MainActivity.Java:

package com.example.myfirstapp; 

import android.os.Bundle; 
import android.app.Activity; 
import android.content.Intent; 
import android.util.Log; 
import android.view.Menu; 
import android.view.View; 

public class MainActivity extends Activity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
    } 

    @Override 
    public boolean onCreateOptionsMenu(Menu menu) { 
     // Inflate the menu; this adds items to the action bar if it is present. 
     getMenuInflater().inflate(R.menu.activity_main, menu); 
     return true; 
    } 

    public void click1(View v) { 
     Log.i("clicks","You Clicked B1"); 
     Intent i=new Intent(
        MainActivity.this, 
        MainActivity2.class); 
     startActivity(i); 
    } 
} 

MainActivity2.java

package com.example.myfirstapp; 

import android.os.Bundle; 
import android.view.Menu; 
import android.app.Activity; 

public class MainActivity2 extends Activity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main2); 
    } 

    @Override 
    public boolean onCreateOptionsMenu(Menu menu) { 
     // Inflate the menu; this adds items to the action bar if it is present. 
     getMenuInflater().inflate(R.menu.activity_main, menu); 
     return true; 
    } 
} 
+1

在这里找到你的答案:http://stackoverflow.com/questions/736571/using-intent-in-an-android-application-to-show-another-activity – DmitryK

+2

请研究有关这方面的教程。网络上有一堆.. – Androyds

+1

你有没有给android:onClick =“click1”属性的activity_main.xml中的按钮? –

回答

4

在您的MainActivity.java文件中写下面的代码而不是代码。

public class MainActivity extends Activity implements OnClickListener { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 

     Button mBtn1 = (Button) findViewById(R.id.mBtn1); 
     mBtn1.setOnClickListener(this); 
    } 

    @Override 
    public boolean onCreateOptionsMenu(Menu menu) { 
     // Inflate the menu; this adds items to the action bar if it is present. 
     getMenuInflater().inflate(R.menu.activity_main, menu); 
     return true; 
    } 

    @Override 
    public void onClick(View v) { 
     Log.i("clicks","You Clicked B1"); 
     Intent i=new Intent(MainActivity.this, MainActivity2.class); 
     startActivity(i); 
    } 
} 

并使用下面的代码将MainActivity2声明到您的Androidmanifest.xml文件中。

<activity 
    android:name=".MainActivity2" 
    android:label="@string/title_activity_main"> 
</activity> 
+0

其中Androidmanifest.xml我需要添加 Dmitry

+0

您的应用程序中只有1个Androidmanifest.xml文件,请参阅此链接了解有关Androidmanifest.xml文件的详细信息http://developer.android.com/guide/topics/manifest/manifest-intro.html –

2

您FirstyActivity更改为:

@Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
     Button btn_go=(Button)findViewById(R.id.YOUR_BUTTON_ID); 
      btn_go.setOnClickListener(new OnClickListener() { 

      @Override 
      public void onClick(View v) { 
       // TODO Auto-generated method stub 
        Log.i("clicks","You Clicked B1"); 
       Intent i=new Intent(
        MainActivity.this, 
        MainActivity2.class); 
       startActivity(i); 
      } 
     } 
    }); 

} 

希望它能帮助你。

+0

没有我理解家伙,不同的代码,答案.... – Dmitry

0

有多种方法可以做到这一点。

这里是直接从谷歌一个很好的资源: http://developer.android.com/training/basics/firstapp/starting-activity.html

在developer.android.com,他们有许多教程解释只是你需要了解Android的一切。他们甚至为每个班级提供详细的API。

如果这没有帮助,有NUMEROUS不同的资源,可以帮助你解决这个问题和其他Android问题。

+0

正确!学习整个主题比找到答案要好 – 2017-08-03 14:51:54

相关问题