有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java Android对其他活动的意图

我想从当前活动转到其他活动。但当我点击按钮时,我无法执行它。我想从MainActivity转到FeedActivity请告诉我代码中的错误是什么

<RelativeLayout xmlns:安卓="http://schemas.安卓.com/apk/res/安卓"
    xmlns:tools="http://schemas.安卓.com/tools"
    安卓:layout_width="match_parent"
    安卓:layout_height="match_parent"
    安卓:paddingBottom="@dimen/activity_vertical_margin"
    安卓:paddingLeft="@dimen/activity_horizontal_margin"
    安卓:paddingRight="@dimen/activity_horizontal_margin"
    安卓:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.sample.test.MainActivity" >

    <TextView
        安卓:id="@+id/textView1"
        安卓:layout_width="wrap_content"
        安卓:layout_height="wrap_content"
        安卓:text="@string/hello_world" />

    <Button
        安卓:id="@+id/button1"
        安卓:layout_width="wrap_content"
        安卓:layout_height="wrap_content"
        安卓:layout_alignLeft="@+id/textView1"
        安卓:layout_below="@+id/textView1"
        安卓:layout_marginLeft="53dp"
        安卓:layout_marginTop="92dp"
        安卓:text="Button" />

    <Button
        安卓:id="@+id/button2"
        安卓:layout_width="wrap_content"
        安卓:layout_height="wrap_content"
        安卓:layout_alignBottom="@+id/button1"
        安卓:layout_marginLeft="20dp"
        安卓:layout_toRightOf="@+id/button1"
        安卓:text="@string/button2" />

</RelativeLayout>

主要活动。java

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Button btn = (Button) findViewById(R.id.button1);
        Button btn2 = (Button) findViewById(R.id.button2);

        btn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View arg0) {
                Toast.makeText(getApplicationContext(),
                        "Welcome to 安卓 by Vivek", Toast.LENGTH_LONG)
                        .show();

            }
        });

        btn2.setOnClickListener(new OnClickListener() {

            public void onClick(View view) {
                Intent intent = new Intent(view.getContext(), FeedActivity.class);
                startActivity(intent);
            }

        });
    }

}

共 (1) 个答案

  1. # 1 楼答案

    创建新的Intent实例时,需要为其提供两个参数:

    • 当前活动类实例
    • 转到活动类实例

    此外,您需要导入视图库或将new OnClickListener用作new View.OnClickListener

    您可以通过将此项添加到导入中来完成此操作:

    import android.view.View;
    import android.view.View.OnClickListener;
    

    btn2.onClickListener更改为:

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