首頁 > 軟體

Android實現介面跳轉功能

2020-09-23 15:00:29

本文範例為大家分享了Android實現介面跳轉的具體程式碼,供大家參考,具體內容如下

佈局

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:app="http://schemas.android.com/apk/res-auto"
  xmlns:tools="http://schemas.android.com/tools"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  tools:context=".MainActivity">

 <!-- 線性佈局 、垂直排列 -->
 <LinearLayout
   android:orientation="vertical"
   android:layout_width="match_parent"
   android:layout_height="match_parent">
  <!-- 編輯框 
 @string/hint 表示 res/values/strings.xml下名為hint的標籤
    strings.xml用於字串資源及其格式化
  -->
  <EditText
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:inputType="textPersonName"
    android:text="Name"
    android:ems="10"
    android:id="@+id/input" android:hint="@string/hint"/>
  <Button
    android:text="@string/send"
    android:layout_width="match_parent"
    android:layout_height="wrap_content" android:id="@+id/button2" android:onClick="send"/>
 </LinearLayout>


</android.support.constraint.ConstraintLayout>

或者點選text左邊的design進行佈局

響應onclick

package com.android02;

import android.content.Intent;
import android.os.Bundle;
import android.support.design.widget.FloatingActionButton;
import android.support.design.widget.Snackbar;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.view.View;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.EditText;

public class MainActivity extends AppCompatActivity {

 //定義常數,作為訊息的key
 public final static String MESSAGE_KEY="com.android2";

 @Override
 protected void onCreate(Bundle savedInstanceState) {

  super.onCreate(savedInstanceState);
  /**
   * 指定佈局(res下的activity_main.xml編譯成r.java)
   */
  setContentView(R.layout.activity_main);
 }

 /**
  *響應onclick事件
  */
 public void send(View button){

  //以id獲取EditText
  EditText editText = findViewById(R.id.input);

  //獲取編輯框文字
  String message = editText.getText().toString();

 //activity、service和broadcast receiver通過Intent進行互動
  Intent intent = new Intent(this,ReceiveActivity.class);

  //在intent中附加資訊
  intent.putExtra(MESSAGE_KEY,message);
  startActivity(intent);
 }

}

建立ReceiveActivity

右擊java>>new>>Activity>>Empty Activity
然後進入建立頁面指定Activity的名字…
然後它在AndroidManifest.xml中自動註冊

package com.android02;

import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.TextView;

public class ReceiveActivity extends AppCompatActivity {

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

  //獲取intent參照
  Intent intent = getIntent();

  //以MESSAGE_KEY獲取獲取編輯框文字
  String message = intent.getStringExtra(MainActivity.MESSAGE_KEY);

  //以id獲取TextView
  TextView textView = findViewById(R.id.output);

  //顯示message
  textView.setText(message);

 }
}

測試

通過AVD manager 建立虛擬手機或使用真機測試

完成。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援it145.com。


IT145.com E-mail:sddin#qq.com