android?studio組件通信:Intend啟動Activity接收返回結(jié)果
實驗?zāi)康模?/strong>
熟悉和掌握Android組件間通信的方式和技巧。
實驗要求:
1.運行課本的示例程序,理解組件通信的方式和過程
2.設(shè)計一個主Activity和一個子Activity(Sub-Activity),使用主Activity上的按鈕啟動子Activity,并將子Activity的一些信息返回給主Activity,并顯示在主Activity上。
可以自己設(shè)計界面和場景,也可以使用下面提供的內(nèi)容:
主Activity界面上有一個“登錄”按鈕和一個用了顯示信息的TextView,點擊“登錄”按鈕后打開一個新的Activity,新Activity上面有輸入用戶名的控件,在用戶關(guān)閉這個Activity后,將用戶輸入的用戶名到主Activity,并顯示在主Activity的TextView中。
實驗結(jié)果:

實驗代碼:
MainActivity.java
package com.example.shiyan4;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity {
int Subact1=1;
TextView textView;
@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if(requestCode==Subact1)
{
//String str= data.getStringExtra("userstr");
textView.setText("用戶名:"+data.getCharSequenceExtra("userstr"));
}
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button button=(Button) findViewById(R.id.button);
textView=findViewById(R.id.textview);
button.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View view) {
Intent intent=new Intent(MainActivity.this,Subactivity.class);//顯式啟動方式
//Intent intent1=new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.baidu.com"));
Intent intent2=new Intent("sub1");//隱式啟動方式
startActivityForResult(intent2,Subact1);
}
});
}
}
SubActivity.java
package com.example.shiyan4;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;
public class Subactivity extends AppCompatActivity {
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.sub_layout);
Button button=(Button) findViewById(R.id.button2);
EditText editText=(EditText)findViewById(R.id.editview);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent=new Intent(Subactivity.this,MainActivity.class);
intent.putExtra("userstr",editText.getText());
setResult(RESULT_OK,intent);
finish();
}
});
}
}
到此這篇關(guān)于android studio組件通信:Intend啟動Activity接收返回結(jié)果的文章就介紹到這了,更多相關(guān)Intend啟動Activity接收返回結(jié)果內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Android開發(fā)實現(xiàn)的保存圖片到相冊功能示例
這篇文章主要介紹了Android開發(fā)實現(xiàn)的保存圖片到相冊功能,結(jié)合實例形式分析了Android圖片命名、保存、權(quán)限控制等相關(guān)操作技巧,需要的朋友可以參考下2019-03-03
Android ANR(Application Not Responding)的分析
這篇文章主要介紹了Android ANR(Application Not Responding)的分析的相關(guān)資料,這里說明什么原因出現(xiàn)應(yīng)用程序的強制關(guān)閉,并說明該如何避免,需要的朋友可以參考下2017-08-08
Android中RecyclerView實現(xiàn)多級折疊列表效果(二)
這篇文章主要給大家介紹了Android中RecyclerView實現(xiàn)多級折疊列表的相關(guān)資料,文中介紹的非常詳細(xì),對大家具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起看看吧。2017-05-05
Android?Studio實現(xiàn)彈窗設(shè)置
這篇文章主要為大家詳細(xì)介紹了Android?Studio實現(xiàn)彈窗設(shè)置,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-04-04
Android Studio導(dǎo)入so文件到項目中的實例詳解
這篇文章主要介紹了Android Studio導(dǎo)入so文件到項目中的實例詳解的相關(guān)資料,希望通過本文能幫助到大家,需要的朋友可以參考下2017-09-09
android底部彈出iOS7風(fēng)格對話選項框(QQ對話框)--第三方開源之IOS_Dialog_Library
這篇文章主要介紹了android底部彈出iOS7風(fēng)格對話選項框(QQ對話框)--第三方開源--IOS_Dialog_Library的相關(guān)資料,需要的朋友可以參考下2015-11-11
Android獲取網(wǎng)絡(luò)連接狀態(tài)新方法整理
這篇文章主要給大家介紹了關(guān)于Android獲取網(wǎng)絡(luò)連接狀態(tài)新方法的相關(guān)資料,在開發(fā)安卓移動端時幾乎每一個app都需要連接網(wǎng)絡(luò),因此對設(shè)備的網(wǎng)絡(luò)狀態(tài)檢測是很有必要的,需要的朋友可以參考下2023-11-11

