- 偶尔写博客
xuell0601 Goto Github PK
Name: xll
Type: User
Location: beijing
Name: xll
Type: User
Location: beijing
Alpha是一个基于PERT图构建的Android异步启动框架,它简单,高效,功能完善。 在应用启动的时候,我们通常会有很多工作需要做,为了提高启动速度,我们会尽可能让这些工作并发进行。但这些工作之间可能存在前后依赖的关系,所以我们又需要想办法保证他们执行顺序的正确性。Alpha就是为此而设计的,使用者只需定义好自己的task,并描述它依赖的task,将它添加到Project中。框架会自动并发有序地执行这些task,并将执行的结果抛出来。
自定义索引,使用场景 ,如电话联系人等等展示,使用注意里边有jar包,使用之前一定要导入
Android 动态表单,支持常用表单(文本框、选择框、下拉框、弹出框、日期选择框)、表单验证、表单渲染。
功能很强大的Gif库,能设置加载方式,可以先加载后显示或者只显示第一帧,播放速度比实际播放速度快,如果要显示的gif太大,会出现BOOM的问题。 使用方法: 1)将GifView的jar包导入到项目中 2)在XML配置,用法与imageview一致 3)代码中配置
收集总结 Android 项目中值得推荐的优秀开源项目
BLE Framework. Based on Bluetooth 4.0. Based on callback. Extremely simple! Communication with BluetoothLE(BLE) device as easy as HTTP communication. Android低功耗蓝牙便捷操作框架,基于回调,完成蓝牙设备交互就像发送网络请求一样简单。
Android 组件化开源app -开眼短视频(OpenEyes)
A categorized collection of Android Open Source Projects, More powerful web version:
几行代码快速集成二维码扫描功能
Android源码设计模式分析项目
:fire:正在成为史上最全分类 Android 开源大全~~~~(长期更新 Star 一下吧)
做外包用的快速开发库--微信、支付宝支付(含签名,下单)、自定义View(验证码/密码,九宫格图片上传等)、换肤、图片预览、RxJava、EventBus、JetPack、CameraX、base层封装等
Android App update library. Android版本更新库,简单、可随意定制
Samples for Android Architecture Components.
:construction: 轮播图框架,banner 今天带给大家一个比较实用的轮播图框架,banner 1.导入依赖 'com.youth.banner:banner:1.4.9' 1 2.添加权限 <uses-permission android:name="android.permission.INTERNET" />//联网 <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />//读取外置存储卡 1 2 3.添加布局 <com.youth.banner.Banner xmlns:app="http://schemas.android.com/apk/res-auto" android:id="@+id/banner" android:layout_width="match_parent" android:layout_height="150dp" /> 1 2 3 4 5 4.在Activity 中编写代码,相关代码含义已经全部添加注释 public class MyBanner extends AppCompatActivity implements OnBannerListener { private Banner banner; private ArrayList<String> list_path; private ArrayList<String> list_title; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_my_banner); initView(); } private void initView() { banner = (Banner) findViewById(R.id.banner); //放图片地址的集合 list_path = new ArrayList<>(); //放标题的集合 list_title = new ArrayList<>(); list_path.add("http://ww4.sinaimg.cn/large/006uZZy8jw1faic21363tj30ci08ct96.jpg"); list_path.add("http://ww4.sinaimg.cn/large/006uZZy8jw1faic259ohaj30ci08c74r.jpg"); list_path.add("http://ww4.sinaimg.cn/large/006uZZy8jw1faic2b16zuj30ci08cwf4.jpg"); list_path.add("http://ww4.sinaimg.cn/large/006uZZy8jw1faic2e7vsaj30ci08cglz.jpg"); list_title.add("好好学习"); list_title.add("天天向上"); list_title.add("热爱劳动"); list_title.add("不搞对象"); //设置内置样式,共有六种可以点入方法内逐一体验使用。 banner.setBannerStyle(BannerConfig.CIRCLE_INDICATOR_TITLE_INSIDE); //设置图片加载器,图片加载器在下方 banner.setImageLoader(new MyLoader()); //设置图片网址或地址的集合 banner.setImages(list_path); //设置轮播的动画效果,内含多种特效,可点入方法内查找后内逐一体验 banner.setBannerAnimation(Transformer.Default); //设置轮播图的标题集合 banner.setBannerTitles(list_title); //设置轮播间隔时间 banner.setDelayTime(3000); //设置是否为自动轮播,默认是“是”。 banner.isAutoPlay(true); //设置指示器的位置,小点点,左中右。 banner.setIndicatorGravity(BannerConfig.CENTER) //以上内容都可写成链式布局,这是轮播图的监听。比较重要。方法在下面。 .setOnBannerListener(this) //必须最后调用的方法,启动轮播图。 .start(); } //轮播图的监听方法 @Override public void OnBannerClick(int position) { Log.i("tag", "你点了第"+position+"张轮播图"); } //自定义的图片加载器 private class MyLoader extends ImageLoader { @Override public void displayImage(Context context, Object path, ImageView imageView) { Glide.with(context).load((String) path).into(imageView); } } }
BRVAH:Powerful and flexible RecyclerAdapter
BitmapCache+DiskCache 图片三级缓存的
CoordinatorLayout 打造炫酷效果的例子
基于谷歌的mvp 之前也写过mvp架构,但是总是感觉不够规范,把谷歌的mvp架构看了一下,基于谷歌然后自己改造了一下,只是个人的理解
使用Flutter撸一个抖音国外版,看看有多炫
:art: :hammer: NavigationView是什么 long long ago :arrow_down:,我们做抽屉菜单的时候,左边滑出来的那一部分的布局都是由我们自己来定义的,自己写的话,花点时间也能做出来好看的侧拉菜单,但总是要耗费时间,于是Google在5.0之后推出了NavitationView,就是我们左边滑出来的那个菜单。这个菜单整体上分为两部分,上面一部分叫做HeaderLayout,下面的那些点击项都是menu,这样的效果如果我们要自己写肯定也能写出来,但是没有必要,既然Google提供了这个控件,那我们就来看看这个控件要怎么用
Android仿美团流行下拉菜单实现
一个可以上拉下滑的Ui效果(4.0+)eg: A Behavior Sample
Create mobile marketplace design using Flutter
:wrench: :globe_with_meridians:自定义流式布局,:zap:标签一.自定义控件的流程 //1.第一步,测量 onMeasure(); //2.第二步,布局 onLayout(); //3.第三部,绘制 onDraw() 1 2 3 4 5 6 二.自定义控件的分类 继承View重写onDraw方法 用于实现一些不规则的效果,不方便通过组合的方式达到,需要通过静态或者动态的显示一些不规则的图形的,需要通过绘制的方式实现,这种方法需要手动的填写支持padding和wrap_content方法 1 继承ViewGroup派生特殊的Layout 这也是我们这此文章介绍的一种自定义布局,即除LinearLayout,RelativeLayout,FrameLayout这几种系统的布局以外的布局,需要稍微的处理元素和子元素的测量和绘制过程, 1 继承特定的View(比如TextView) 这种方法用来扩展已经有的View的功能,这种方法相对比较简单 1 继承特定的ViewGroup(比如LinearLayout) 这种方法比较普遍,当某种效果比较像很多种View组合在一起的时候,可以采用这种方法来实现,采用这种方法不需要自己处理ViewGroup的测量和布局这两个过程. 上次的文章中介绍了一个PullRefresh(下拉刷新,与加载更多按钮) 1 2 3 下拉刷新,加载很多的地址PullRefresh
How time flies.一款开源习惯打卡APP,流畅的动画体验,Bloc实现状态管理,主题(颜色)切换,字体切换,数据库管理等。
基于Flutter写的一个教练打卡App,本项目已经上线使用,可在各大应用商店查看,为了大家学习和尝试Flutter项目,本着开源给大学一个例子供学习,仅供参考!
Flutter写的小demo
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.