簡體   English   中英

使用按鈕打開新活動

[英]open new activity with button

這是我的xml的代碼。

<Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/btn2"
            android:layout_gravity="center_horizontal"
            android:text="Make New Account"
            android:onClick="new"
            android:textColor="#E74C3C"
            android:textStyle="bold"
            android:paddingTop="20dp"/>

這是我的Java代碼。

 public Button btn2;
public void onClick(){
    btn2=(Button)findViewById(R.id.btn2);
    btn2.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent intent = new Intent(MainActivity.this,submit.class);
            startActivity(intent);
        }
    });

}

我的按鈕仍無法正常工作,單擊按鈕后,甚至會出現一條消息,不幸的是應用程序已停止……原因是什么?

試試這個代碼:

<Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/btn2"
    android:layout_gravity="center_horizontal"
    android:text="Make New Account"
    android:textColor="#E74C3C"
    android:textStyle="bold"
    android:paddingTop="20dp"/>

把它放在你的活動中:

    btn2 = (Button) findViewById(R.id.btn2);
    btn2.setOnClickListener(new View.OnClickListener()
    {
        @Override
        public void onClick(View v)
        {
            Intent intent = new Intent(MainActivity.this,submit.class);
            startActivity(intent);
        }
    });

您的代碼是完美的奈達。只需在清單文件中添加您的活動名稱,如下面的代碼,

 <activity android:name=".submit"/>

您有兩種方法:

要么

1)在按鈕上設置一個onClick偵聽器

要么

2)在按鈕上設置onClick屬性並創建方法

方法1

xml文件

<Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/btn2"
        android:layout_gravity="center_horizontal"
        android:text="Make New Account"
        android:textColor="#E74C3C"
        android:textStyle="bold"
        android:paddingTop="20dp"/>

Java文件

public Button btn2;
btn2 = (Button) findViewById(R.id.btn2);
btn2.setOnClickListener(new View.OnClickListener()
{
    @Override
    public void onClick(View v)
    {
        Intent intent = new Intent(MainActivity.this,submit.class);
        startActivity(intent);
    }
});

方法2

xml文件

<Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/btn2"
    android:layout_gravity="center_horizontal"
    android:onclick="newAccount"
    android:text="Make New Account"
    android:textColor="#E74C3C"
    android:textStyle="bold"
    android:paddingTop="20dp"/>

Java文件

public Button btn2;
btn2=(Button)findViewById(R.id.btn2);
public void newAccount(View v) {
        Intent intent = new Intent(MainActivity.this,submit.class);
        startActivity(intent);
    }

問題是當您將按鈕的onClick聲明為new時,您正在調用onClick函數

嘗試這個 :

<Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/btn2"
        android:layout_gravity="center_horizontal"
        android:text="Make New Account"
        android:onClick="submit"
        android:textColor="#E74C3C"
        android:textStyle="bold"
        android:paddingTop="20dp"/>

然后在您的活動類中聲明此函數:

public void submit(View view){
Intent intent = new Intent(MainActivity.this,submit.class);
        startActivity(intent);
}

而已。 希望這可以幫助。

Activity是最基本的Android組件,也是四個組件( ActivityServiceContent ProviderBroadcastReceiver )最常用的用法。

創建Activity的步驟:

  1. 創建一個新的Java類並擴展Activity

  2. 添加AndroidManifest

     <activity android:name=".ActivityClassName"/> 

    如果是啟動界面

     <activity android:name=".ActivityClassName"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER"/> </intent-filter> </activity> 
  3. 覆蓋onCreate()函數並加載布局

注意: Java類的活動通常以Activity結尾

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM