为了账号安全,请及时绑定邮箱和手机立即绑定

一 dileber开发mvp项目、activity基类实现与代码示例

标签:
Android

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

该项目是一个mvp项目

dileber 安卓框架一共提供了2个activity基础类,分别是
BaseActivity,UBaseActivity
<strong>BaseActivity(可定制化比较高,如果项目有需求,在其基础上直接继承更改):</strong>
BaseActivity是最基础的类,只要继承该类,ActivityManager就能帮助你方便的管理所有的activity,甚至无需在项目中传递context就能完成上下文对接。

该类含有三个注解:
<pre>CloseStatusBar,HideKeyboard,CheckKeyboard</pre>
字面意思就是关闭状态栏,和隐藏键盘(刚进入activity时候有时候会弹出键盘,加上这个注解之后将键盘屏蔽掉),还有一个就是检查是否弹出键盘(判断如果弹出键盘的话就执行showKeyboard 函数)

必须实现的方法
<pre>layoutViewId,startView,initView</pre>
第一个是需要吧layout的id返回,第二个是在设置好layout之前执行的方法,第三个是在layout设置后执行的方法

方便的几个函数
<pre>findView,setToolBar,setTitle</pre>
第一个获取view,不需要强转,第二个设置toolbar,第三个设置title

<strong>UBaseActivity(快速开发直接继承使用,含有很多方法直接使用,快速开发必备):</strong>
UBaseActivity实现了我定义好的view接口,能够快速的进行弹alert,toast,加载loading。
提供多种方法:
<pre>toast,showAlert,loading,loadDialogDismiss,dialogOk,getActivityContext</pre>
demo代码(demo原来是一个大型项目的一小部分代码)
UBaseActivity的使用代码

public class MActivity extends UBaseActivity implements BaseFragment.OnBaseInteractionListener{

    private final static String PID = "PID";

    Integer pid;

    public static void start(Context context,Integer pid){
        Intent intent = new Intent();
        intent.putExtra(PID,pid);
        intent.setClass(context, MActivity.class);
        context.startActivity(intent);
    }

    @Override
    protected void startView(Bundle savedInstanceState) {

    }

    @Override
    protected int layoutViewId() {
        return R.layout.activity_tail;
    }

    @Override
    protected void initView(Bundle savedInstanceState) {
        super.initView(savedInstanceState);
        pid = getIntent().getIntExtra(PID,0);
        UToolBar uToolBar = new UToolBar();
        uToolBar.setNeedNavigate(true);
        uToolBar.setTitleString("详情页");
        setToolBar(R.id.toolbar,uToolBar);
        MFragment fragment = ActivityUtils.getFragment(getSupportFragmentManager(),R.id.agment, MFragment.newInstance(pid));
        new lPresenter(fragment, ProductRepository.getInstance());
    }

    @Override
    public void onRightButtonString(BaseFragment fragment, String str, View.OnClickListener onClickListener) {

    }

    @Override
    public void onTitleName(BaseFragment fragment, String title) {
        setTitle(title);
    }
}
点击查看更多内容
2人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

举报

0/150
提交
取消