2013-01-08 117 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

相關問題