抽象方法的運用送給android新萌

給我的傻徒弟寫的,有些新的安卓新萌 不會用廣播,也不會用觀察者模式,使用抽象方法也可跨越界面進行操作通知更新ui等。儘量寫的詳細一點 給新萌看的 

這個的用處就相當於你又兩個java文件A和B  你需要從B的項目中通知A去修改ui或者做一些別的操作就可以用到一下方法

這個方法本人用的最多的地方就是activity和adapter之前的關聯,如有些點擊事件寫在adapter裏面 然後點擊後無法更新ui什麼什麼的用這個方法可以完全解決

首先是Bjava

其實方法很簡單 首先創建interface 

public void mainadapter extends BaseAdapter{ //這裏就先寫個mainadapter吧 爲了下面的操作

   

private IAddListListener listener;//聲明成員變量

public interface IAddListListener {//創建抽象類
    void deleteBank();//添加抽象方法,可任意添加多個可帶參數如void test(String cibtext);往下加就行
}
然後在寫個註冊關聯用的 看不懂沒關係 往下看 

public void setIDeleteListener(IAddListListener listener) {
    this.listener = listener;
}
點擊事件 點擊觸發抽象類中的deleteBank()方法 

View.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
    @Override
    public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
listener.deleteBank();
}});

接下來需要在需要關聯抽象類的另外的java界面 集成抽象方法
Ajava文件



public class mainactivity extends BaseAdapter implements BaseDelegate
創建關聯的方法  
mainadapter mainadapter = new mainadapter();//new一個Bjava的對象


mainadapter.setIDeleteListener(this)//這裏必須集成抽象類纔可以寫this 註冊
會自動集成剛纔抽象類的方法 在這裏面就收到了剛纔發的通知 可以進行操作或者更新ui
@Override
public void deleteBank() {

}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章