標籤:tac create activity 一個 class private gets ide finish
我這裡是有兩個視窗 第二個視窗會把第一個視窗傳過來的值顯示在標籤上 第二個視窗的按鈕是銷毀本視窗 第一個視窗按鈕是載入第二個視窗並且傳值到第二個視窗 (有幾個按鈕ID 和textview ID 我就不提了 應該看得懂)
這裡主要用到了Intent 發現這個對象用到的很多
這是第一個視窗的java代碼MainActivity
package com.example.vmpdump.windw;import android.content.Intent;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.View;import android.widget.Button;public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Button bt=findViewById(R.id.button); bt.setOnClickListener(OnClickListener); } private View.OnClickListener OnClickListener =new View.OnClickListener() { @Override public void onClick(View view) { Intent intent =new Intent(); intent.setClass(MainActivity.this,Main2Activity.class);//第一個是當前視窗context 第二個是要載入的視窗類別 intent.putExtra("鍵","哈哈哈哈");//向另一個視窗傳遞參數索引值對相當於map 可以傳數組,對象什麼的 Serializable這個是傳對象的 startActivity(intent);//啟動intent // 如果你是用IDE直接產生的視窗 ManiFest不用加 <activity android:name=".Main2Activity android:label="視窗標題""></activity> 他自動加好了 } };}
這是第二個視窗java類代碼Main2Activity
package com.example.vmpdump.windw;import android.content.Intent;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.View;import android.widget.Button;import android.widget.TextView;public class Main2Activity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main2); Intent intent =getIntent(); Bundle bundle=intent.getExtras(); String temp= bundle.getString("鍵"); TextView textView= findViewById(R.id.lab); Button button=findViewById(R.id.button2); button.setOnClickListener(onClickListener); textView.setText(temp); } private View.OnClickListener onClickListener=new View.OnClickListener() { @Override public void onClick(View view) {finish();//銷毀本視窗則自動返回載入視窗 } };}
安卓 如何載入一個新視窗如何關閉視窗和向另一個視窗傳值