1

我是 android 新手,这是我的第一个演示应用程序。我正在尝试从一页导航到另一页。但是我无法导航到另一个页面,我在可能的主 xml 文件中有一个按钮,并且在舔它时它正在移动到另一个 xml 下一页。我有 2 个 java 类:第一个 MianAcitvity,nextpagejava。2 xml:activity_main,下一页

我的代码:清单

    <activity
        android:name="com.example.androiddemo.MainActivity"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity android:name="nextpagejava" ></activity>

MainActivity.java

package com.example.androiddemo;
import android.os.Bundle; 
import android.app.Activity; 
import android.content.Intent; 
import android.drm.DrmStore.Action;
 import android.view.Menu; 
import android.view.View; 
import android.view.View.OnClickListener; 
 import android.widget.Button;

     public class MainActivity extends Activity implements OnClickListener {

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

           Button bt = (Button)findViewById(R.id.bnt);
           bt.setOnClickListener(new View.OnClickListener() {

           @Override
            public void onClick(View v) {
              / / TODO Auto-generated method stub

           }
         }); 
         }

          @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) {
          // TODO Auto-generated method stub
          switch(v.getId()){
          case R.id.bnt:
                 Intent in = new Intent(this, nextpagejava.class);
                 startActivity(in);
             break;


          }
          }
          }

活动主文件.xml

       <LinearLayout  xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        tools:context=".MainActivity" >

         <TextView 
        android:id="@+id/clicktxt"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Click"        
        />

        <Button
        android:id="@+id/bnt"
        android:layout_height="wrap_content"
        android:layout_width="wrap_content"
        android:text="Click Me"
        />

谁能告诉我我做错了什么?

4

8 回答 8

1

试试这样..

 Button button = (Button)findViewById(R.id.button);
        button.setOnClickListener(new OnClickListener() {

         public void onClick(View v) {
         Intent intent = new Intent(MainActivity.this,NextActivity.class);
         startActivity(intent);
         }
        });
于 2013-01-09T06:23:29.820 回答
1

在您的代码中删除以下代码

    bt.setOnClickListener(new View.OnClickListener() {

               @Override
                public void onClick(View v) {
                  / / TODO Auto-generated method stub

               }
             }); `


and put  bt.setOnClickListener(this);
于 2013-01-09T06:27:33.187 回答
0

检查这个从你的java类编辑的代码。

package com.example.androiddemo;
import android.os.Bundle; 
import android.app.Activity; 
import android.content.Intent; 
import android.drm.DrmStore.Action;
import android.view.Menu; 
import android.view.View; 
import android.view.View.OnClickListener; 
import android.widget.Button;

 public class MainActivity extends Activity implements OnClickListener {

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

       Button bt = (Button)findViewById(R.id.bnt);
       bt.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) {
      // TODO Auto-generated method stub
      switch(v.getId()){
      case R.id.bnt:
             Intent in = new Intent(MainActivity.this, nextpagejava.class);
             startActivity(in);
         break;


      }
      }
      }
于 2013-01-09T06:22:23.457 回答
0

我看到两个问题:

  1. nextpagejava必须在清单中使用完整的类名(包括包)声明活动
  2. OnClickListener您在按钮上附加了一个空白。
于 2013-01-09T06:23:05.187 回答
0

您的代码中有两个问题。

第一个- 在 android 清单文件中写入带有包名的活动名称,如下所示。

<activity android:name="com.example.androiddemo.nextpagejava" ></activity>

第二个- 在 MainActivity.java 文件中使用下面的代码并删除。

 bt.setOnClickListener(this); 

删除这个

 bt.setOnClickListener(new View.OnClickListener() {

           @Override
            public void onClick(View v) {
              / / TODO Auto-generated method stub

           }
         }); 
于 2013-01-09T06:25:51.110 回答
0

给定后不要实现 onClickListener

 bt.setOnClickListener(new View.OnClickListener() {

           @Override
            public void onClick(View v) {
              / / TODO Auto-generated method stub

           }
         }); 

并删除其中一个 onClick() 方法。

于 2013-01-09T06:27:59.590 回答
0

从一项活动转移到另一项活动所需要做的就是以下

startActivity(new Intent(MainAcitvity.this, NextPage.class));
于 2013-01-09T06:39:41.043 回答
0

在主活动文件中使用下面的代码:

bt.setOnClickListener(this);

于 2015-09-24T04:10:12.973 回答