从一个页面导航到另一个页面

时间:2013-01-09 06:18:18

标签: android android-manifest

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

我的代码:清单

    <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;


          }
          }
          }

acitivity_main.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"
        />

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

8 个答案:

答案 0 :(得分: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);
         }
        });

答案 1 :(得分:1)

代码中的

删除以下代码

    bt.setOnClickListener(new View.OnClickListener() {

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

               }
             }); `


and put  bt.setOnClickListener(this);

答案 2 :(得分: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;


      }
      }
      }

答案 3 :(得分:0)

我看到两个问题:

  1. 必须在清单中使用完整的类名(包括包)声明nextpagejava活动
  2. 您已将空OnClickListener附加到按钮上。

答案 4 :(得分: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

           }
         }); 

答案 5 :(得分:0)

给出

后,不要实现onClickListener
 bt.setOnClickListener(new View.OnClickListener() {

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

           }
         }); 

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

答案 6 :(得分:0)

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

startActivity(new Intent(MainAcitvity.this, NextPage.class));

答案 7 :(得分:0)

在主要活动文件中使用以下代码:

bt.setOnClickListener(本);