Basefragment的封装使用】的更多相关文章

这篇博客主要是从BaseActivity与BaseFragment的封装开始,总结我们在实战开发中关于Fragment的注意事项以及心得体会. 先看以下效果图: 这里模拟的是用户登录模块,你可能会说,很普通的效果嘛,这有啥.嘿嘿,那我要告诉你的是,这么多模块仅仅由两个Activity构成的.等你从头到尾看完这篇博客,你就会惊叹其中的奥秘了.废话不多说,开始. 本案例属于多模块Activity+多Fragment,下面简单介绍下概念. 多模块Activity+多Fragment 是开发APP非常适…
1.前言 封装作为面向对象的三大特性之一,在我们平时的coding过程用的那是非常的多的.大多数时候,我们可以根据封装情况评判代码的质量水平. 本文主要讲解的是fragment的封装.大体上,在项目的初期,我们都会在基类中把一些常用的东西封装起来,以供子类方便的调用.这用做的好处是显而易见的: 将一些共用的东西集中放在base基类中 方便后期修改维护 避免子类代码冗余 消除不必要的重复代码 方便子类的使用 2.开始封装 2.1 获取mActivity 在fragment中,我们可以通过getAc…
  1.前言 昨天谈了BaseActivity的封装,Android谈谈封装那些事--BaseActivity和BaseFragment(一)有很多小伙伴提了很多建议,比如: 通用标题栏可以自定义View而不放在Base里面,代码更统一 BaseEventActivity里面应该留出开关保证不需要Bus的Activity使用 BaseStatusActivity里面就一个方法没必要新建一个 还有一些小的细节 在这里感谢大家的建议了啊.我修改了一部分,后面会慢慢优化,最后在HLibrary里面贴出…
Android精选源码 轻量级底部导航栏   android手机卫士源码   android实现高仿今日头条源码   一个用Kotlin写的简单漫画App源码   android吐槽项目完整源码   实现可以滑动文字逐渐变色的TabLayout   android实现将app隐藏加密功能的源码   android实现横向滚动的卡片堆叠布局   android仿支付宝的咻咻动画源码   android状态栏和沉浸式导航栏管理源码   Android优质博客 从BaseActivity与BaseFr…
本人定期更新经典案例及解决方案如有疑问请联系我QQ1822282728 -- 277627117   下面是常用到的ui  Demo 安卓三级筛选菜单listview(非常经典) http://download.csdn.net/detail/zillvip/9138975 android地图应用(路径规划,地理编码,公交查询,活动轨迹)http://download.csdn.net/detail/zillvip/9126691 开源中国源代码带服务新UI http://download.cs…
[BaseFragment]: public abstract class BaseFragment extends Fragment { /*★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★*/ private LoadingPage loadingPage; private ViewGroup container; public boolean isInViewPager=false;//继承的Fragment是否存在于ViewPager中 //默认为fals…
在项目里面会经常用到Fragment与FragmentActivity,比如Fragment之间的界面切换与Fragment之间的值传递等等,为了方便起见我把Fragment和FragmentActivity进一步封装,那在实际开发中只需要继承父类,然后调用一个方法就可以实现Fragment之间界面切换和值传递 1.FragmentActivity类的封装 <span style="font-size:14px;">public class BaseChangeFragme…
前言 以前每个页面与每个页面业务逻辑传递让你不知所措,一个又一个接口回调,让你晕头转向,一个又一个参数让你混乱不堪.EventBus一个耦合度低的让你害怕的框架. 什么是EventBus EventBus是一个消息总线,以观察者模式实现,用于简化程序的组件,可以轻易切换线程,实现各组件之间的刷新通知,以及参数的传递.EventBus3.0跟之前版本的区别 是介入了annotation @Subscribe,取代了以前约定命名的方式. EventBus的优点 它代替了广播,startActivit…
练习MVP架构开发的App,算是对自己学过的知识做一个总结,做了有一段时间,界面还算挺多的.代码量还是有的,里面做了大量封装,总体代码整理得非常干净,这个我已经尽力整理了. 不管是文件(java.xml.资源文件)命名.还是布局设计尽量简单简洁,代码不会写的非常复杂.整个代码结构有非常高的统一度,结构也比較简单清晰,方便理解.里面做了大量的封装,包含基类的构建和工具类的封装.再配合Dagger2的使用能够极大地减轻V层(Activity和Fragment)的代码,假设你有看源代码的话你会发现大部…
前言 文本已经收录到我的Github个人博客,欢迎大佬们光临寒舍:我的GIthub博客 看完本篇文章的,可以看下带你封装自己的MVP+Retrofit+RxJava2框架(二),里面封装得到了改进 本篇文章需要已经具备的知识: MVP的概念和基本使用 Retrofit框架的基本使用 RxJava2框架的基本使用 ButterKnife框架的基本使用 Base基类的概念 学习清单: Activity和Fragment基类的封装 MVP的封装使用 一.为什么要封装这套框架呢? 在搞清楚这个问题之前,…
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Text.RegularExpressions; using System.Threading.Tasks; namespace ConsoleApplication6 { public sealed class RegularExpressionHelper { /// <summary> ///…
上篇博客<iOS逆向工程之KeyChain与Snoop-it>中已经提到了,App间的数据共享可以使用KeyChian来实现.本篇博客就实战一下呢.开门见山,本篇博客会封装一个登录用的SDK, 该登录SDK中包括登录.注册.忘记密码等功能,当然该SDK中包括这些功能的UI.数据验证等业务逻辑.网络请求.数据存储等等.当然此处的登录SDK是一个简化版的,真正的登录SDK比这个考虑的东西要多的多,如果在加上多个App进行登录账号的共享的话,那么考虑的东西就更为复杂了. 本篇博客就先封装一个Logi…
都知道实现页面的异步操作需要使用Ajax,那么Ajax到是怎么实现异步操作的呢? 首先需要认识一个对象 --> XMLHttpRequest 对象 --> Ajax的核心.它有许多的属性和方法事件以便于脚本处理和控制HTTP的请求和响应. 下面来认识几个属性:我不用官方的话来解释,希望大家能一看就知道是什么意思 readyState 属性 创建XMLHttpRequest对象(下面称ajax对象)后,readyState属性则表示当前对象处于一个什么状态 ,一共5个状态 0   未初始化状态…
用C语言封装OC对象(耐心阅读,非常重要) 本文的主要内容来自这里 前言 做iOS开发的朋友,对OC肯定非常了解,那么大家有没有想过OC中NSInteger,NSObject,NSString这些对象是怎么封装的?接下来我们就使用C语言来一部一部的实现这个封装. Object对象 首先我们先封装一个Object对象,我们来分析一下: 如果使用C来封装对象,我们就要用到结构体 每一个Object都有一个计数器,这个计数器用来管理对象的释放 提供一定的方法,能够retain, release, 获取…
一.写在前面 相信各位看官对retrofit和rxjava已经耳熟能详了,最近一直在学习retrofit+rxjava的各种封装姿势,也结合自己的理解,一步一步的做起来. 骚年,如果你还没有掌握retrofit和rx两大框架,那你是真的out了! 如果你对Rxjava不熟悉,请先看扔物线的给 Android 开发者的 RxJava 详解,超详细: 如果你只是想了解retrofit的简单使用,你可以看我另外一篇博客(仅仅是简单使用),android快捷开发之Retrofit网络加载框架的简单使用,…
前言 首先声明一下,我这个是对WebUploader开源上传控件的二次封装,底层还是WebUploader实现的,只是为了更简洁的使用他而已. 下面先介绍一下WebUploader 简介: WebUploader是由Baidu WebFE(FEX)团队开发的一个简单的以HTML5为主,FLASH为辅的现代文件上传组件.在现代的浏览器里面能充分发挥HTML5的优势,同时又不摒弃主流IE浏览器,沿用原来的FLASH运行时,兼容IE6+,iOS 6+, android 4+.两套运行时,同样的调用方式…
封装就是将相关的方法或者属性抽象成为一个对象. 封装的意义: 对外隐藏内部实现,接口不变,内部实现自由修改. 只返回需要的数据和方法. 提供一种方式防止数据被修改. 更好的代码复用. 当一个类的属性类型为集合,或者方法返回类型为集合时,如果符合以下条件,我们就可以考虑将集合进行封装: 返回的数据仅用于展示 当集合的Add,Remove方法包含其它业务逻辑 向类的调用者隐藏类中的完整集合有如下几个好处: 保证返回的集合数据不会被修改. 在Add, Remove方法中可以添加验证,日志或其他业务逻辑…
package com.zb.zhihuianyang.base; import android.app.Activity; import android.os.Bundle; import android.support.v4.app.Fragment; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; /** * Fragment基类 * 1. 初始化布局…
+BIT祝威+悄悄在此留下版了个权的信息说: CSharpGL(29)初步封装Texture和Framebuffer +BIT祝威+悄悄在此留下版了个权的信息说: Texture和Framebuffer Texture和Framebuffer是OpenGL进行3D渲染高级效果必不可少的利器.有了Texture和Framebuffer就可以实现体渲染(Volume Rendering)等效果.现在到了对Texture和Framebuffer的创建.修改.使用进行封装的时候. +BIT祝威+悄悄在此…
CSharpGL(7)对VAO和VBO的封装 2016-08-13 由于CSharpGL一直在更新,现在这个教程已经不适用最新的代码了.CSharpGL源码中包含10多个独立的Demo,更适合入门参考. 为了尽可能提升渲染效率,CSharpGL是面向Shader的,因此稍有难度. VAO(VBO) 在legacy OpenGL中,渲染图形是用glVertex()之类的方式实现的. 在modern OpenGL中,则是用VAO和VBO来存储图形信息以备渲染的. VBO(Vertex Buffer…
Swift -- 对AFN框架的封装 一.封装AFN的目的 简单的说: 解耦 日常工作中,我们一般都不会去直接使用AFNetWorking来直接发送网络请求,因为耦合性太强,假设有多个控制器都使用AFN发送请求,那么假设有一天AFN框架的作者不更新了,到时我们需要改动的地方太多太多~ 所以这里我们要自己来封装AFN 二.封装之前准备工作: 利用cocoapods集成AFN框架 三.封装AFN的方式 封装AFN有两种方法: 工具类,继承NSObject 继承AFHTTPSessionManager…
先封装下实现方法: public class DeepClone { public static object CopyObject(Object obj) { if (obj == null) { return null; } Object targetDeepCopyObj; Type targetType = obj.GetType(); //zhileixing if (targetType.IsValueType == true) { targetDeepCopyObj = obj;…
把数据库做成一个类,先建一个php文件,保存.最好和平时写的那些在同一路径下. 便于以后换电脑,只需在封装里面改一下四个参数就可以了 <?php class fengzhuang //类名 { //四个成员变量存了四个参数 public $host = "localhost"; //代表服务器地址 public $uid = "root"; //用户名 public $pwd = "726"; //密码 public $dbname = &…
之所以要发表这篇博客,还源于最近的开发工作所实现的一个小的Demo, 当然这个Demo不会涉及工作中App的一些内容,下方要实现的Demo是通用的.因为项目需求的迭代,要求在银行卡绑定中添加支行所在的省市信息.在iOS中选择这种省市信息的一个比较不错的方式当时是使用UIPickerView进行显示了.当然在PickerView上的省市信息是联动显示的,我们在此因为需求定的是让用户选择省市信息,所以我们进行二级联动,当然多级联动的原理也是一样的.由于之前的老项目是使用Objective-C写的,虽…
JS是一门面向对象语言,其对象是用prototype属性来模拟的,下面,来看看如何封装JS对象. 常规封装 function Person (name,age,sex){ this.name = name; this.age = age; this.sex = sex; } Pserson.prototype = { constructor:Person, sayHello:function(){ console.log('hello'); } } 这种方式是比较常见的方式,比较直观,但是Per…
在ios开发中,难免会用到helper的思想.这篇就简单讲解下关于helper的简单实用方法. 假设我们要做一个这样的界面: 会议分为四种情况: 未召开 正在召开 已结束 已取消 再看看逻辑关系: 编程联想: 当我们要开发某一种功能的时候,有的同学可能一上来就写代码,由于有一定的经验,可能很快就实现了功能,但遇到业务复杂的功能,这么做就很容易写出杂乱的代码.我的习惯是,不妨先画出逻辑图,如果能够事先确定一些大概的方法,就更好了,我们的目的就是使用精简的代码完成功能. 我们这个界面主要依赖Meet…
之前在学习NodeJs的时候,每次操作数据库都需要连接数据库然后开始写Sql操作,这样非常麻烦,然后自己对Mysql进行了封装,一共100多行代码. github地址: Mysql操作 我在里面对Mysql基本操作--增删改查进行了封装,在处理NodeJs的异步回调时使用了原型扩展.Promise规范的Q,我觉得Q的设计容易理解,便于使用. 因为大部分的查询需要返回数据,所以根据数据库表中字段设置相同的字段,下面会介绍,而修改.删除.增加数据都只需要返回是否成功,所以会返回0/1作为判断. 调用…
抛出一个问题,其实所谓的熟悉原生JS,怎样的程度才是熟悉呢? 最近都在做原生JS熟悉的练习... 用原生Js封装了一个Ajax插件,引入一般的项目,传传数据,感觉还是可行的...简单说说思路,如有不正确的地方,还望指正^_^ 一.Ajax核心,创建XHR对象 Ajax技术的核心是XMLHttpRequest对象(简称XHR),IE5是第一款引入XHR对象的浏览器,而IE5中的XHR对象是通过MSXML库中的一个ActiveX对象实现的,因此在IE中可能有3个版本,即MSXML2.XMLHttp.…
本文主要介绍Android立体旋转动画,或者3D旋转,下图是我自己实现的一个界面 立体旋转分为以下三种: 1. 以X轴为轴心旋转 2. 以Y轴为轴心旋转 3. 以Z轴为轴心旋转--这种等价于android默认自带的旋转动画RotateAnimation 实现立体旋转核心步骤: 1. 继承系统Animation重写applyTransformation方法 通过applyTransformation方法的回调参数 float interpolatedTime, Transformation t 来…
Quartz.NET是一个非常强大的作业调度框架,适用于各种定时执行的业务处理等,类似于WINDOWS自带的任务计划程序,其中运用Cron表达式来实现各种定时触发条件是我认为最为惊喜的地方. Quartz.NET主要用到下面几个类: IScheduler --调度器 IJobDetail --作业任务 ITrigger --触发器 如果我们自己采用Timer来写类似的定时执行任务程序的话,相应的我们应该有:(以下均为设想,目的是让大家搞清楚Quartz.NET上面三个接口的关系) Schedul…