-5

I am completely new to programming and I am trying to create an android app. At the moment I am trying to understand how to use OnClick() to make it so my button on MainActivity links to another activity.

4

3 回答 3

2

要对按钮执行一些操作,请单击以下步骤:

步骤1:

在 Activity 布局中添加一个按钮,如下所示:

<Button
    android:id="@+id/button_id_here"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"/>


第2步:

将您添加NextActivityAndroidManifest.xml

 <!-- your other xml  -->
 <application
  <!-- your other xml  -->
        <activity
            android:name=".NextActivity" />

 </application>


第 3 步:

在 MainActivity 代码中添加一个按钮单击监听器到 button_id_here 为:

public class MainActivity extends Activity {

    Button button_test;  //<< Create Button instance here
    Intent intent;       //<< For starting new Activity
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);

            // Add layout to Activity here
        setContentView(R.layout.your_Activity_layout);

         // Initilie button here
         button_test= (Button) findViewById(R.id.button_id_here);

               // add a onclick listner to button here
         button_test.setOnClickListener(new View.OnClickListener() {
         public void onClick(View v) {
              intent = new Intent(MainActivity.this,NextActivity.class);

              startActivity(intent); //<<< start Activity here
            }
        });
     }

}

如果仍然面临在按钮单击上做一些活动,那么在这里学习:

https://developer.android.com/training/index.html

于 2012-12-26T06:33:18.103 回答
0

如果您想在单击按钮时链接到另一个活动,那么您首先需要设置一个侦听器来侦听按钮的单击。那么您需要重写该onClick()函数以实现单击该特定按钮所需的功能。

这是一段代码,可以让您知道它是如何工作的。

Button send = (Button) findViewById(R.id.send);
send.setOnClickListener(new View.OnClickListener() {
    public void onClick(View v) {
        Toast.makeText(getApplicationContext(), "Send Button Clicked", 5000).show();
        Intent i = new Intent(CurrentActivity.this, NextActivity.class);
        i.putExtra("Data", data); //It is for any data you want to send to next activity
        startActivity(i);
            }
        });
于 2012-12-26T06:14:39.410 回答
0

你可以这样做:

@Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_login_page);
        String info = "Extra info";
        btn= findViewById(R.id.btn);


        btn.setOnClickListener (new onClickListener(){
             Intent i = new Intent(this, NextActivity.class);
             //If you need to pass any information
             i.putExtra("Info", info);
             startActivity(i);

    });
}
于 2012-12-26T06:03:44.600 回答