Github最火开源项目-一分钟完结向左拖拽跳转详细

作者:ca88编程

与登陆相关面试题

  • oauth认证左券原理
  • token发生的意义
  • Wechat扫一扫完毕原理

用法

1、在xml中配备如下 (注意:DragContainer只可以有二个子View卡塔尔国,RecyclerView向左拖拽

 <com.fangxu.library.DragContainer android: android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginLeft="10dp"> <android.support.v7.widget.RecyclerView android: android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@android:color/white" /> </com.fangxu.library.DragContainer>

2、在java类中增进事件监听器DragListener

 DragContainer dragContainer = (DragContainer) findViewById(R.id.drag_recycler_view); //若需使用自己定制的footer,需要调用DragContainer的setFooterDrawer方法设置定制的footer类,如下 dragContainer.setFooterDrawer(new ArrowPathFooterDrawer.Builder(this, 0xff444444).setPathColor(0xffffffff).build; dragContainer.setDragListener(new DragListener() { @Override public void onDragEvent() { //do whatever you want,for example skip to the load more Activity. Intent intent = new Intent(HomeActivity.this, ShowMoreActivity.class); startActivity; } }); @Override public void onDragEvent() { Intent intent = new Intent(HomeActivity.this, ShowMoreActivity.class); startActivity; }
attribute value type defalut value description
dc_footer_color color 0xffcdcdcd footer view的背景颜色
dc_reset_animator_duration integer 700 松开拖拽后复位动画的时长
dc_drag_damp float 0.5f 拖拽阻尼系数,取值在(0,1]之间,取值越小,阻尼越大
  • 细节注意://若需使用自身定制的footer,供给调用DragContainer的setFooterDrawer方法设置定制的footer类,如下dragContainer.setFooterDrawer(new Arrow帕特hFooterDrawer.Builder(this, 0xff444444卡塔尔.setPathColor(0xffffffff卡塔尔国.build;

此外控件用法 (HorizontalScrollView用法卡塔尔

<com.fangxu.library.DragContainer android: android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginLeft="10dp" app:dc_reset_animator_duration="500"> <HorizontalScrollView android: android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@android:color/white" android:scrollbars="none"> <LinearLayout android: android:layout_width="match_parent" android:layout_height="170dp" android:orientation="horizontal" /> </HorizontalScrollView> </com.fangxu.library.DragContainer> 

 private void setupHorizontalScrollView() { LinearLayout linearLayout = (LinearLayout) findViewById(R.id.linear_layout); for (int i = 10; i < 20; i  ) { ImageView imageView = new ImageView; LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(dp2px, ViewGroup.LayoutParams.MATCH_PARENT); params.leftMargin = 0; params.rightMargin = dp2px; imageView.setScaleType(ImageView.ScaleType.CENTER_CROP); imageView.setLayoutParams; linearLayout.addView(imageView); Glide.with.load(Constants.urls[i]).into(imageView); } DragContainer dragContainer = (DragContainer) findViewById(R.id.drag_scroll_view); BaseFooterDrawer drawer = new com.fangxu.dragfooterview.customfooters.ArrowPathFooterDrawer.Builder(this, 0xff444444).setPathColor(0xffffffff).build(); dragContainer.setFooterDrawer; dragContainer.setDragListener; }

与质量优化相关面试题

  • 内部存款和储蓄器泄漏和内部存款和储蓄器溢出差异
  • UI优化和线程池实现原理
  • 代码优化
  • 内部存款和储蓄器品质剖判
  • 内部存款和储蓄器泄漏检查测量试验
  • App运行优化
  • 与IPC机制相关面试题

数据库

  • 一分钟达成LitePal数据库
  • 一分钟完毕ormlite数据库
  • 一秒钟实现GreenDao数据库

(TextView, Button用法)

 <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginBottom="20dp" android:orientation="horizontal"> <com.fangxu.library.DragContainer android: android:layout_width="0dp" android:layout_height="wrap_content" android:layout_marginLeft="10dp" android:layout_marginRight="10dp" android:layout_weight="1" app:dc_reset_animator_duration="500"> <TextView android: android:layout_width="match_parent" android:layout_height="80dp" android:background="#66ee66" android:gravity="center" android:scaleType="centerCrop" android:text="TextView" /> </com.fangxu.library.DragContainer> <com.fangxu.library.DragContainer android: android:layout_width="0dp" android:layout_height="wrap_content" android:layout_marginLeft="10dp" android:layout_weight="1" app:dc_reset_animator_duration="500"> <Button android: android:layout_width="match_parent" android:layout_height="80dp" android:background="#ff6600" android:scaleType="centerCrop" android:text="Button" /> </com.fangxu.library.DragContainer> </LinearLayout>

private void setupTextView() { DragContainer dragContainer = (DragContainer) findViewById(R.id.drag_text_view); dragContainer.setDragListener; } private void setupButton() { Button button =  findViewById(R.id.button); button.setOnClickListener(new View.OnClickListener() { @Override public void onClick { Toast.makeText(HomeActivity.this, "onClick", Toast.LENGTH_SHORT).show; button.setOnLongClickListener(new View.OnLongClickListener() { @Override public boolean onLongClick { Toast.makeText(HomeActivity.this, "onLongClick", Toast.LENGTH_SHORT).show(); return true; } }); DragContainer dragContainer = (DragContainer) findViewById(R.id.drag_button); dragContainer.setDragListener; } 

工具

  • 一分钟完毕RecyclerView
  • 一分钟实现H5和Android通讯
  • 一分钟完成pinyin4j
  • 一分钟完结深入分析内部存款和储蓄器泄漏

(ImageView用法)

<com.fangxu.library.DragContainer android: android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="10dp" app:dc_drag_damp="0.66" app:dc_reset_animator_duration="500"> <ImageView android: android:layout_width="150dp" android:layout_height="200dp" android:scaleType="centerCrop" /> </com.fangxu.library.DragContainer>

 private void setupImageView() { ImageView imageView = (ImageView) findViewById(R.id.image_view); Glide.with.load(Constants.urls[0]).into(imageView); DragContainer dragContainer = (DragContainer) findViewById(R.id.drag_image_view); dragContainer.setFooterDrawer(new BezierFooterDrawer.Builder(this, 0xffffc000).setIconDrawable(getResources().getDrawable(R.drawable.left)).build; dragContainer.setDragListener; }

与性欲相关面试题

  • 情欲面试宝典

开源地址:

摄像地址:

图片 1

  • 详细的运用方法在DEMO里面都是身作则啦,假诺你认为那一个库还不易,请赏我一颗star吧~~~

  • 应接关心Wechat大伙儿号、长时间为您推荐卓绝博文、开源项目、录制

微教徒人号名称:Android干货程序员

图片 2

用作三个library,当然不可能只扶助上述那一种作用啊,所以,这么些库的Footer应该是可定制的,可插拔的。定制Footer只需定义四个后续自BaseFooterDrawer的类,然后在参数中提供的区域中绘制即可,而别的的风云分发,拦截都无需关爱。以下是自家自个儿定制的二种Footer效果。

图片 3图片 4

联网

  • 一分钟学会Retrofit何况开展实战
  • 一秒钟完成OkHttp3

与花销相关面试题

  • 迭代支出的时候如何向前兼容新旧接口
  • 手把手教你怎样缓慢解决as jar包冲突
  • context的法则解析
  • 解决ViewPager.setCurrentItem中间相当多页面切换方案
  • 字体适配
  • 软键盘适配
  • 机型适配,举例三星(Samsung卡塔尔(قطر‎、Motorola、Samsung、Samsung等
  • CardView 设置水波纹效果

自定义控件

  • 一分钟达成贴纸功效
  • 一分钟完结TextView高亮
  • 一分钟完成生手教导页
  • 一秒钟达成ViewPager卡牌
  • 一分钟达成加载对话框
  • 一分钟完成轮播图
  • 一分钟完结GridView拖拽
  • 一分钟实现尾部导航栏
  • 一分钟实现尾部FragmentTabhost
  • 一分钟完毕多张图片选取
  • 一秒钟实现仿美拍直播的点赞动漫
  • 一分钟实现高仿今日头条录制列表
  • 一分钟完成购物车加减控件
  • 一分钟落成省市县三级联合浮动
  • 一分钟完毕二维码生成和扫描
  • 一分钟达成沉浸式状态栏
  • 一分钟达成图片裁剪
  • 一分钟完结视频弹幕
  • 一分钟完结图片缩放
  • 一分钟实现旋转接收器
  • 一分钟完毕ofo小黄车的引导分界面
  • 一分钟完毕自定义ImageView外貌
  • 一分钟达成向左拖拽跳转详细情况页
  • 一分钟完结QQ首页动漫特效
  • 一分钟达成ViewPager上下滑动

源码分析相关面试题

  • Volley源码解析
  • 表明框架完结原理
  • okhttp3.0源码解析
  • onSaveInstanceState源码解析
  • 沉默安装和源码编写翻译

Service相关面试题

  • Intent瑟维斯源码深入分析
  • Service是不是在main thread中进行, service里面是不是能奉行耗费时间的操作?
  • Service不死之身

Activity相关面试题

  • 保存Activity的状态
  • 深刻深入分析activity运转方式
  • 浓郁分析activity运行方式
  • 浓重解析activity运转方式
  • Activity Task和Process之间的关联
  • 源码深入分析service开启Activity抛非常?activity不会抛极度
  • Activity高雅退出
  • onCreate源码解析

1. 在project的build.gradle增添正如代码

allprojects { repositories { ... maven { url "https://jitpack.io" } }}

图片 5

2. 在Module的build.gradle增多正视

compile 'com.github.open-android:DragFooterView:0.1.0'

与XMPP相关面试题

  • XMPP左券优短处
  • 极光音信推送原理

本文由ca88发布,转载请注明来源

关键词: ca88网址 yzc777亚洲城 开源 跳转 最火