編輯:Android開發實例
我們知道在安卓開發當中一個Android的應用程序中,很少只存在一個Activity,一般都有多個Activity,如何在多個Activity之間進行跳轉和傳值呢?我們可以通過 Intent 對象來實現上面所述的功能。下面通過在FirstActivity中實現兩個數進行相加,把相加的結果值通過Intent把值傳遞到SecondActivity中。 我們新建一個Android的工程,有兩個Activity,分別為FirstActivity 和 SecondActivity ,同時在資源文件下的 res/layout 目錄下也有兩個布局文件,分別為 main.xml【對應FirstActivity】和secondlayout.xml【對應SecondActivity】,目錄的結構圖如下:
在 main.xml 布局文件中添加兩個EditText控件,一個TextView控件,一個Button按鈕,代碼如下:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<EditText
android:id="@+id/firstNum"
android:layout_width="fill_parent"
android:layout_height="wrap_content"/>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="加"
android:textSize="20sp"
/>
<EditText
android:id="@+id/secondNum"
android:layout_width="fill_parent"
android:layout_height="wrap_content"/>
<Button
android:id="@+id/btnCalc"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="計算結果"/>
</LinearLayout>
在secondlayout.xml布局文件中,添加一個EditText控件來顯示從FirstActivity中傳過來的值。代碼如下:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<EditText
android:id="@+id/result"
android:layout_width="fill_parent"
android:layout_height="wrap_content"/>
</LinearLayout>
在FirstActivity中的代碼如下:
package com.andyidea.test;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
public class FirstActivity extends Activity {
EditText firstNum,secondNum;
Button calc;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
firstNum = (EditText)findViewById(R.id.firstNum);
secondNum = (EditText)findViewById(R.id.secondNum);
calc = (Button)findViewById(R.id.btnCalc);
calc.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String num1 = firstNum.getText().toString();
String num2 = secondNum.getText().toString();
Intent intent = new Intent();
intent.putExtra("one", num1);
intent.putExtra("two", num2);
intent.setClass(FirstActivity.this, SecondActivity.class);
startActivity(intent);
}
});
}
}
在SecondActivity中的代碼如下:
package com.andyidea.test;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.EditText;
public class SecondActivity extends Activity {
EditText result;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.secondlayout);
result = (EditText)findViewById(R.id.result);
Intent intent = getIntent();
String num1 = intent.getStringExtra("one");
String num2 = intent.getStringExtra("two");
int ret = Integer.parseInt(num1) + Integer.parseInt(num2);
result.setText(ret+"");
}
}
同時別忘了在Manifest配置文件中對SecondActivity進行注冊。
前面一篇高仿launcher和墨跡左右拖動效果獲得了很多朋友的好評,上一篇文章主要是通過自定義ViewGroup實現的,有點麻煩。今天用ViewPager這個類實
Android提供了許多方法來控制播放的音頻/視頻文件和流。其中該方法是通過一類稱為MediaPlayer。Android是提供MediaPlayer類訪問內置的媒體播放
前面文章講述了Android手機與BLE終端之間的通信,而最常見的BLE終端應該是蘋果公司倡導的iBeacon基站。iBeacon技術基於BLE,它的特點是通過廣
引言在windows安裝Android的開發環境不簡單也說不上算復雜,本文寫給第一次想在自己Windows上建立Android開發環境投入Android浪潮的朋友