簡單實現兩個activity相互跳轉

Diy_os發表於2015-10-19
下面簡單實現兩個activity之間相互跳轉。我們首先要明白的是一個MyActivity就是一個類,而這個類繼承Activity類。實現兩個activity之間的跳轉,則我們需要建立兩個activity子類。
首先看下簡單的佈局檔案:

點選(此處)摺疊或開啟

  1. <RelativeLayout xmlns:android=" />
  2.     xmlns:tools=" />
  3.     android:layout_width="match_parent"
  4.     android:layout_height="match_parent"
  5.     android:paddingBottom="@dimen/activity_vertical_margin"
  6.     android:paddingLeft="@dimen/activity_horizontal_margin"
  7.     android:paddingRight="@dimen/activity_horizontal_margin"
  8.     android:paddingTop="@dimen/activity_vertical_margin"
  9.     tools:context="com.example.android01.MainActivity" >

  10.     <TextView
  11.         android:id="@+id/MyText"
  12.         android:layout_width="match_parent"
  13.         android:layout_height="wrap_content" />
  14.     
  15.     <Button
  16.         android:id="@+id/MyButton"
  17.         android:layout_width="match_parent"
  18.         android:layout_height="match_parent" />
  19. </RelativeLayout>


第一個activity:

點選(此處)摺疊或開啟

  1. package com.example.android01;
  2. import android.app.Activity;
  3. import android.content.Intent;
  4. import android.os.Bundle;
  5. import android.view.View; //import android.view.View.OnClickListener;
  6. import android.widget.Button;

  7. public class MainActivity extends Activity {

  8.     @Override
  9.     protected void onCreate(Bundle savedInstanceState) {
  10.         
  11.         super.onCreate(savedInstanceState);
  12.         setContentView(R.layout.activity_main);
  13.         
  14.         Button myButton = (Button)findViewById(R.id.MyButton); //用findViewById獲取Button控制元件的id
  15.         
  16.         myButton.setText("請點選!跳轉介面");                    //設定Button控制元件上的Text
  17.         
  18.         myButton.setOnClickListener(new wang()); //繫結當前的Button  
  19.         
  20.     }
  21.     
  22.      class wang implements android.view.View.OnClickListener {  //構造一個內部類,並用Intent物件進行跳轉
  23.         
  24.         
  25.         public void onClick(View v){
  26.             
  27.             Intent intent = new Intent();
  28.             intent.setClass(MainActivity.this,otherActivity.class);//從當前activity跳轉到另一個activity
  29.             MainActivity.this.startActivity(intent);              
  30.             
  31.         }
  32.         
  33.     }
  34. }
第二個activity:


點選(此處)摺疊或開啟

  1. package com.example.android01;

  2. import android.app.Activity;
  3. import android.content.Intent;
  4. import android.os.Bundle;
  5. import android.view.View;
  6. import android.view.View.OnClickListener;
  7. import android.widget.Button;
  8. import android.widget.TextView;

  9. public class otherActivity extends Activity {
  10.    
  11.         @Override
  12.         protected void onCreate(Bundle savedInstanceState) {  
  13.             
  14.             super.onCreate(savedInstanceState);
  15.             setContentView(R.layout.activity_main);
  16.             
  17.             TextView Mytext = (TextView)findViewById(R.id.MyText);
  18.             Button myButton = (Button)findViewById(R.id.MyButton); //該activity中的操作和上面activity一樣,不再贅述
  19.             myButton.setText("第一個Button");
  20.             Mytext.setText(R.string.lios);
  21.             myButton.setOnClickListener(new lios());
  22.         }
  23.         
  24.         class lios implements OnClickListener{
  25.             
  26.             public void onClick(View v){
  27.                 
  28.                 Intent intent = new Intent();
  29.                 intent.setClass(otherActivity.this,MainActivity.class);
  30.                 otherActivity.this.startActivity(intent);
  31.             }
  32.         }
  33.     }
上面已經完成了兩個activity程式碼部分,但是在執行Android程式,會報錯,因為otherActivity沒有在AndroidMainfest.xml中註冊,關於該檔案的作用,這裡不作說明。
下面註冊新建activity的資訊:

點選(此處)摺疊或開啟

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <manifest xmlns:android=" />
  3.     package="com.example.android01"
  4.     android:versionCode="1"
  5.     android:versionName="1.0" >

  6.     <uses-sdk
  7.         android:minSdkVersion="14"
  8.         android:targetSdkVersion="18" />

  9.     <application
  10.         android:allowBackup="true"
  11.         android:icon="@drawable/ic_launcher"
  12.         android:label="@string/app_name"
  13.         android:theme="@style/AppTheme" >
  14.         <activity
  15.             android:name=".MainActivity"
  16.             android:label="@string/app_name" >
  17.             <intent-filter>
  18.                 <action android:name="android.intent.action.MAIN" />

  19.                 <category android:name="android.intent.category.LAUNCHER" />
  20.             </intent-filter>
  21.         </activity>
  22.         <activity android:name=".otherActivity" >
  23.         </activity>
  24.     </application>

  25. </manifest>
然後執行程式,出現我們想要的結果。上面只是應用Intent最簡單的應用,還有很多其他應用。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29876893/viewspace-1815036/,如需轉載,請註明出處,否則將追究法律責任。

相關文章