继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

android 开发:fragment 和 activity通信

慕码人3916992
关注TA
已关注
手记 101
粉丝 81
获赞 3602

dileber android 框架:乁( ˙Ω˙ )厂 跳转链接 dileber android框架
怎么说呢?既然看到了就在github上star一下呗 (´ཀ`」 ∠)

fragment中设置监听器
dileber框架中的BaseFragment有一个监听器如下

protected OnBaseInteractionListener mBaseListener;

    public interface OnBaseInteractionListener {
        void onRightButtonString(String str, View.OnClickListener onClickListener);
        void onTitleName(String title);
    }

    protected void setActivityRightButton(String str,View.OnClickListener onClickListener) {
        if (mBaseListener != null) {
            mBaseListener.onRightButtonString(str,onClickListener);
        }
    }

    protected void setActivityTitle(String title){
        if (mBaseListener != null) {
            mBaseListener.onTitleName(title);
        }
    }

    @Override
    public void onDetach() {
        super.onDetach();
        mBaseListener = null;
    }

该监听器的作用是
设置activity的title bar菜单按钮文字,和点击效果。
设置activity title

让activity 实现OnBaseInteractionListener接口
并在fragment中设置

@Override
    public void onAttach(Context context) {
        super.onAttach(context);
        if (context instanceof OnBaseInteractionListener) {
            mBaseListener = (OnBaseInteractionListener) context;
        } else {
            throw new RuntimeException(context.toString()
                    + " must implement OnBaseInteractionListener");
        }
    }

在fragment 中调用

setActivityRightButton("创建", new View.OnClickListener() {
            @Override
            public void onClick(View v) {
mPresenter.createSaleChance(s_theme.getText().toString(),myaccount,s_product,d,stage_goal
                        ,possibility_of_success,priority,remark.getText().toString());
            }
        });

如图效果
图片描述

打开App,阅读手记
3人推荐
发表评论
随时随地看视频慕课网APP