Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android之淺析回調

Android之淺析回調

編輯:關於Android編程

初次用到回調是在Fragment和Activity之間進行通信的時候,當時感覺很難理解,但又覺得這個方法使用起來很方便,所以對它進行仔細的研究。發現回調不僅僅是實現功能那麼簡單,它還可以把幾個相似的功能用簡單的幾句代碼來實現。所以在編程中使用回調可增加碼農們的效率。

我自己總結出了回調的大致四個步驟:

1.在需要調用的文件裡寫一個接口和一個接口方法。注意,這裡的權限都是公共的。

2.在被調用的文件裡實現這個接口和這個接口的方法。在這個方法裡寫我們的需求,也就是所需要的功能。

3.在需要調用的文件裡寫和靜態方法和一個接口類型的靜態變量,在方法裡使被調用的文件轉化為此接口類型的變量。

4.在被調用的文件裡調用第3步的靜態方法,使兩文件關聯起來。

5.調用接口方法(靜態變量.接口方法)。

簡而言之:回調就是使用實現接口的接口方法來操作本類文件。

下面這是一個簡單的示例:

我們需要在A畫面實現文本框文字的改變,所以我們可以在另一個B畫面裡創建接口,操作A畫面的文本文字。

A畫面:

  1. publicclassCallBack_AActivityextendsAppCompatActivity
  2. implementsCallBack_BActivity.callBack{
  3. privateTextViewtv;
  4. @Override
  5. protectedvoidonCreate(BundlesavedInstanceState){
  6. super.onCreate(savedInstanceState);
  7. setContentView(R.layout.activity_call_back__a);
  8.  
  9. CallBack_BActivity.setCallBack(this);
  10.  
  11. tv=(TextView)findViewById(R.id.tv);
  12. tv.setClickable(true);
  13. tv.setOnClickListener(newView.OnClickListener(){
  14. @Override
  15. publicvoidonClick(Viewview){
  16. Intentintent=newIntent(getBaseContext(),CallBack_BActivity.class);
  17. startActivity(intent);
  18. }
  19. });
  20. }
  21.  
  22. @Override
  23. publicvoidchangeText(Stringresult){
  24. tv.setText(result);
  25. }
  26.  
  27. }

B畫面:

  1. publicclassCallBack_BActivityextendsAppCompatActivity{
  2. privatestaticcallBackback;
  3. @Override
  4. protectedvoidonCreate(BundlesavedInstanceState){
  5. super.onCreate(savedInstanceState);
  6. setContentView(R.layout.activity_call_back__b);
  7. }
  8. publicvoidclick(Viewview){
  9. back.changeText("這是一個回調");
  10. finish();
  11. }
  12. publicinterfacecallBack{
  13. publicvoidchangeText(Stringresult);
  14. }
  15. publicstaticvoidsetCallBack(Contextcontext){
  16. back=(callBack)context;
  17. }
  18. }
  19. /*
  20. *1.在本界面定義接口
  21. *2.在另一個界面實現此接口
  22. *3.本界面實現方法
  23. *4.另一個界面關聯。
  24. **/

截圖:

1.第一次進入A畫面:

\

2.點擊文本框進入B畫面

\

3.點擊按鈕返回A畫面

\

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved