1. 程式人生 > >【從頭學android】在兩個Activity之間實現介面切換

【從頭學android】在兩個Activity之間實現介面切換

1.java

/**
 * 
 */
package com.itest;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

/**
 * @author Robin
 */
public class ITestP3Activity extends Activity {
	Button b1;
	View v1;

	/** Called when the activity is first created. */
	@Override
	public void onCreate( Bundle savedInstanceState )
	{
		super.onCreate( savedInstanceState );
		//快取View1
		v1 = getLayoutInflater().inflate( R.layout.p31, null );
		//動態修改v1中內容
		b1 = (Button) v1.findViewById( R.id.button1 );
		b1.setOnClickListener( new OnClickListener() {
			@Override
			public void onClick( View v )
			{
				Intent in = new Intent();
				in.setClassName( getApplicationContext(), "com.itest.ITestP4Activity" );
				startActivity( in );
			}
		} );
		//切換到v1
		setContentView( v1 );
	}
	
}


2.java

/**
 * 
 */
package com.itest;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

/**
 * @author Robin
 */
public class ITestP4Activity extends Activity {
	Button b1;
	View v1;

	/** Called when the activity is first created. */
	@Override
	public void onCreate( Bundle savedInstanceState )
	{
		super.onCreate( savedInstanceState );
		//快取View1
		v1 = getLayoutInflater().inflate( R.layout.p41, null );
		//動態修改v1中內容
		b1 = (Button) v1.findViewById( R.id.button1 );
		b1.setOnClickListener( new OnClickListener() {
			@Override
			public void onClick( View v )
			{
				Intent in = new Intent();
				in.setClassName( getApplicationContext(), "com.itest.ITestP3Activity" );
				startActivity( in );
			}
		} );
		//切換到v1
		setContentView( v1 );
	}
	
}

切換兩個Activity使用了Intent類,其實常用這個類的會有呼叫撥打電話、發簡訊等外部程式

要注意的是每次的切換,都是新啟動的Activity程式,可以通過下面的程式碼測試一下

/**
 * 
 */
package com.itest;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;

/**
 * @author Robin
 */
public class ITestP3Activity extends Activity {
	Button b1;
	Button b2;
	View v1;
	TextView tv1;

	/** Called when the activity is first created. */
	@Override
	public void onCreate( Bundle savedInstanceState )
	{
		super.onCreate( savedInstanceState );
		//快取View1
		v1 = getLayoutInflater().inflate( R.layout.p31, null );
		//動態修改v1中內容
		b1 = (Button) v1.findViewById( R.id.button1 );
		b1.setOnClickListener( new OnClickListener() {
			@Override
			public void onClick( View v )
			{
				Intent in = new Intent();
				in.setClassName( getApplicationContext(), "com.itest.ITestP4Activity" );
				startActivity( in );
			}
		} );

		tv1 = (TextView) v1.findViewById( R.id.textView1 );
		
		b2 = (Button) v1.findViewById( R.id.button2 );
		b2.setOnClickListener( new OnClickListener() {
			@Override
			public void onClick( View v )
			{
				tv1.setText( System.currentTimeMillis()+"" );
				// TODO Auto-generated method stub
			}
		});
		//切換到v1
		setContentView( v1 );
	}
	
}

會發現在切換之前TextView上顯示的數字,在切換回來之後消失了

然後按系統的返回鍵,會一頁一頁的返回上一頁(可以返回到有數字的一頁),從而說明每次的切換,都是新啟動的Activity程式

相關推薦

從頭androidActivity之間實現介面切換

1.java /** * */ package com.itest; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import andro

AndroidActivity之間利用bundle傳遞數值

安卓中的Activity相當於vb,mfc中的窗體,在多個Activity之間傳遞資料是一個相當核心的功能。下面舉個例子來說明這個問題。 一、基本目標 使用者在兩個輸入框中輸入使用者名稱、密碼之後,跳到另一個Activity當中,顯示其輸入的內容, 然後這兩個Activi

AndroidActivity之間簡單通信

idg tin test ide button ima 接收 9.png set 在Android中,一個界面被稱為一個activity,在兩個界面之間通信,采用的是使用一個中間傳話者(即Intent類)的模式,而不是直接通信。 下面演示如何實現兩個activity之間的通

Activity之間介面回撥進行通訊

因為剛接觸的一個專案是藍芽連線,需求是要在掃描介面點選條目進行連線 時,在跳轉的另一個activity(姑且先叫它連線介面吧)上顯示連線的過程, 也就是彈出一個dialog,所以就需要用介面回撥

數據結構單循環鏈表的連接操作

單鏈表 ont rac 步驟 lis ext content mil 改變 假設在單鏈表或頭指針表示的鏈表上操作這個比較消耗性能,由於都須要遍歷第一個鏈表。找到an,然後將b1鏈接到an的後面。時間復雜度是:O(n)。若在尾指針表示的單循環鏈表上實現,則僅僅需改變指針,

代碼審計任意文件讀取漏洞實例

狀態 內容 cfg 必須 名稱 ror div 完整 FN 0x00 前言 0x01 漏洞實例一 環境搭建: XYHCMS官網:http://www.xyhcms.com/ 網站源碼版本:XYHCMS V3.5(2017-12-04 更新) 程序源碼下載:https:

劍指offer實現佇列

用兩個棧來實現一個佇列,完成佇列的Push和Pop操作。 佇列中的元素為int型別。 public class Solution {        Stack<Integer> stack1 = new Stack<In

Android Intent傳值(Activity之間傳遞資料)

在兩個Activity之間傳遞資料,最終都是通過Intent傳遞,但設定資料和儲存資料方式有兩種(使用Intent 和 Bundle),分別對應如下: 設定資料(MainActivity.java) 方法一:1.直接用intent.putExtra(“name”,“張三”)

Android Studio中Activity之間的轉換及資料的傳遞

在建立好兩個Activity之後,分別命名為 MainActivity 和 SecondActivity。 一,Activity之間的切換         在MainActivity中點選Login Button鍵,然後跳轉到SecondActivity,並將資料傳給Ma

分步詳解有序陣列中的中位數和Top K問題

問題介紹 這是個超級超級經典的分治演算法!!這個問題大致是說,如何在給定的兩個有序數組裡面找其中的中值,或者變形問題,如何在2個有序陣列陣列中查詢Top K的值(Top K的問題可以轉換成求第

jQuery日期處理時間大小的比較

function checkEndTime(){ var startTime=$("#startTime").val(); var start=new Date(startTime.replace

Android Activity之間傳遞資料及返回

從Activity1帶引數跳轉到Activity2這個經常用到,比較熟悉,但如何從Activity2將資料返回給Activity1呢?這個其實也不麻煩,動手敲一下就知道了。 Activity1程式碼:public class MainActivity extends A

Android入門 多Activity之間切換原理介紹

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

Activity之間重複相互跳轉時遇到的坑

  最近在做的一個應用,主體為兩個Activity,互動時需要來回在兩個Activity之間跳轉,首先Act A先啟動,然後Act A啟動Act B,之後Act B可以通過startActivity

Activity之間的資料傳遞(使用簡單的intent方法)

android程式設計學習中,最近在編寫一個簡單的android專案,實現在TwoActivity(書籍列表)中點選LisView的任意item傳遞書名,給ThreeAvtivity(章節列表),通過接收到的資料(書名)確定顯示書的章節目錄,使用的是intent方法。其中T

activity之間使用intent傳遞list型別的物件

在兩個activity之間傳遞list型別的物件。 第一個介面 import java.io.Serializable; import java.util.ArrayList; import java.util.List; import java.util.Map;

activity之間透明過渡效果和經驗

來看下效果圖: 大致效果解釋: 1. 當用戶點選登入時logo下滑一定距離 2. 下滑後旋轉90時 變化圖示 3. 繼續旋轉90度 4. 然後移動到左上角 透明度漸變到上個activity 最後銷燬當前activity

Activity之間傳遞List資料

一、List<T>的Bean物件,Bean類實現Serializable介面 public class WordReview implements Serializable {

Activity之間如何傳遞一張圖片

Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.ic_target); ByteArrayOu

Activity之間資料的傳遞

MainActivity package com.example.mac.sendargs; import android.content.Intent; import android.supp