最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Android在自定義類中實現(xiàn)自定義監(jiān)聽器方式

 更新時間:2020年03月26日 10:56:20   作者:Simon_Qi  
這篇文章主要介紹了Android在自定義類中實現(xiàn)自定義監(jiān)聽器方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

監(jiān)聽器可以說是Android開發(fā)中最常用的東西之一。我們通過監(jiān)聽器可以監(jiān)聽對象的各種變化事件,并進行一些需要的處理,相當有用,而且使用起來也很簡單。其實,監(jiān)聽器就相當于C++中的回調函數(shù),達到條件就回調執(zhí)行。

很多時候,我們在自定義控件類中也需要實現(xiàn)一些屬性變化的監(jiān)聽器,實現(xiàn)跟原生控件監(jiān)聽器一樣的功能。以下分幾個步驟說明自定義監(jiān)聽器實現(xiàn)和使用(以自定義類MyClass加載完成監(jiān)聽器為例):

一、自定義監(jiān)聽器的實現(xiàn):

1、 定義一個加載完成監(jiān)聽接口

//加載監(jiān)聽接口
public static interface LoadingListener {
 public void onFinishedLoading(boolean success);
}

在MyClass自定義類中定義一個加載完成監(jiān)聽接口LoadingListener,接口中聲明一個方法onFinishedLoading給使用該接口的類實現(xiàn)具體過程,success表示是否加載成功.

2、 聲明接口并實現(xiàn)一個設置監(jiān)聽器的方法

聲明LoadingListener接口

private LoadingListener mLoadingListener;

提供設置LoadingListener方法

public void setLoadingListener(LoadingListener listener) {
 mLoadingListener = listener;
}

3、 對應的情況下調用該接口的方法

在MyClass加載完成的時候則調用監(jiān)聽接口的方法

mLoadingListener.onFinishedLoading(true);

二、自定義監(jiān)聽器的使用:

1、給MyClass的實例實現(xiàn)監(jiān)聽接口中方法

mMyClass.setLoadingListener(new MyClass.LoadingListener() {
   @Override
   public void onFinishedLoading(boolean success) {
   //執(zhí)行必要的處理
  }
}

在onFinishedLoading函數(shù)中實現(xiàn)自定義的邏輯則可。

補充知識:android Activity 給 Fragment 設置回調的方法

這個實現(xiàn)方法很簡單,可分為3步走:

1.在fragment中定義接口

2.在activity的定義時實現(xiàn)這個接口

3. 在fragment中的 onAttach 方法中 將 Context 轉為 相應的接口;

代碼如下:

public class AllFragment extends Fragment {

//......代碼省略
 

 @Override
 public void onAttach(Context context) {
  super.onAttach(context);
  mOnChangeTabListener = (OnChangeTabListener) context;
 }

 public interface OnChangeTabListener{
  void onChangeTab(String tag);
 }
}

在activity的定義時實現(xiàn)該接口,如下:

public class SearchActivity extends AppCompactActivity implements AllFragment.OnChangeTabListener {

 //代碼省略
 @Override
 public void onChangeTab(String tag) {
  if ("應用".equals(tag)){
   mViewPager.setCurrentItem(1);
  }else {
   mViewPager.setCurrentItem(2);
  }
 }
}

以上這篇Android在自定義類中實現(xiàn)自定義監(jiān)聽器方式就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • 基于Android中手勢交互的實現(xiàn)方法

    基于Android中手勢交互的實現(xiàn)方法

    本篇文章是對Android中手勢交互的實現(xiàn)進行了詳細的分析介紹。需要的朋友參考下
    2013-05-05
  • Android LineChart繪制多條曲線的方法

    Android LineChart繪制多條曲線的方法

    這篇文章主要為大家詳細介紹了Android LineChart繪制多條曲線的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-05-05
  • Android調用系統(tǒng)自帶瀏覽器打開網(wǎng)頁的實現(xiàn)方法

    Android調用系統(tǒng)自帶瀏覽器打開網(wǎng)頁的實現(xiàn)方法

    在Android中可以調用自帶的瀏覽器,或者指定一個瀏覽器來打開一個鏈接。只需要傳入一個uri,可以是鏈接地址。接下來通過本文給大家分享android 自帶瀏覽器打開網(wǎng)頁的實現(xiàn)方法,需要的朋友參考下吧
    2017-09-09
  • Android自定義view實現(xiàn)圓環(huán)進度條效果

    Android自定義view實現(xiàn)圓環(huán)進度條效果

    這篇文章主要為大家詳細介紹了Android自定義view實現(xiàn)圓環(huán)進度條效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • android長截屏原理及實現(xiàn)代碼

    android長截屏原理及實現(xiàn)代碼

    本篇文章主要介紹了android長截屏原理及實現(xiàn)代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-08-08
  • Android手機端小米推送Demo解析和實現(xiàn)方法

    Android手機端小米推送Demo解析和實現(xiàn)方法

    本篇文章主要是介紹了Android端小米推送Demo解析和實現(xiàn)方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下。
    2016-10-10
  • Android利用Canvas類繪制圖形

    Android利用Canvas類繪制圖形

    這篇文章主要為大家詳細介紹了Android利用Canvas類繪制圖形,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-09-09
  • 詳解Android 7.0 Settings 加載選項

    詳解Android 7.0 Settings 加載選項

    本篇文章主要介紹了Android 7.0 Settings 加載選項,Android 7.0 Settings頂部多了一個建議選項,多了個側邊欄,操作更加便捷了,有興趣的可以了解一下。
    2017-02-02
  • Android實現(xiàn)Window彈窗效果

    Android實現(xiàn)Window彈窗效果

    這篇文章主要為大家詳細介紹了Android實現(xiàn)Window彈窗效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-10-10
  • Android通知欄增加快捷開關的功能實現(xiàn)教程

    Android通知欄增加快捷開關的功能實現(xiàn)教程

    對于Android來說其中一項很方便的操作便是下拉菜單,下拉菜單欄可以快捷打開某項設置,這篇文章主要給大家介紹了關于Android通知欄增加快捷開關的功能實現(xiàn),需要的朋友可以參考下
    2023-01-01

最新評論

江安县| 同仁县| 瓦房店市| 延吉市| 黔西| 崇明县| 上思县| 宝应县| 吉木萨尔县| 泌阳县| 葫芦岛市| 桂林市| 兴海县| 宜兴市| 东阿县| 乾安县| 深州市| 沙洋县| 长寿区| 鹤庆县| 化州市| 安多县| 孝昌县| 灵璧县| 五家渠市| 永济市| 天门市| 奇台县| 扶余县| 永丰县| 库尔勒市| 宽城| 尼玛县| 金川县| 宜宾县| 商丘市| 伊宁县| 景宁| 城口县| 潞西市| 蕉岭县|