技术控

    今日:32| 主题:49249
收藏本版 (1)
最新软件应用技术尽在掌握

[其他] MultiStateView:Android 通用状态切换视图

[复制链接]

立即注册CoLaBug.com会员,免费获得投稿人的专业资料,享用更多功能,玩转个人品牌!

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
MultiStateView

   参考 Kennyc1012/MultiStateView 这个这个写的,1.0版本只是在这个上面加了默认布局,以及修正了在设计器中无法预览的问题
  2.0是自己写的,主要增加了自定义状态,当然,核心原理还是那样
   用于切换不同View的各种状态,默认包含 Content , Empty , Fail , Loading 4个状态,并且支持添加其他状态
   并且处理了 Loading 显示时间很短立刻切换到其他状态时看起来好像 Loading 界面闪了一下
   
MultiStateView:Android 通用状态切换视图-1 (Android,android,center,layout,通用)

  Using MultiStateView

  Layout

  [code]     xmlns:tools="http://schemas.android.com/tools"
    xmlns:xdj="http://schemas.android.com/apk/res-auto"
    android:id="@+id/multi_state_view"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center"
    xdj:msv_emptyView="@layout/msv_view_state_empty"
    xdj:msv_failView="@layout/msv_view_state_fail"
    xdj:msv_loadingView="@layout/msv_view_state_loading"
    tools:context="me.xdj.multistateview.MainActivity">

            android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:gravity="center"
        android:text="Content" />
[/code]  可以通过以下属性自定义可状态下的视图
  [code]

[/code]  主要方法

  [code]public void setViewState(int state) // 设置视图状态
public int getViewState()           // 获得当前状态
public View getView(int state)      // 获得指定状态的视图
public void addViewForStatus(int status, int resLayoutID) // 增加状态
public void setOnInflaterListener(OnInflateListener onInflateListener) // 各状态Layout inflate时触发(除了CONTENT)[/code]  Tips
   1. 当从 Loading 状态切换到其他状态时,如果 Loading 持续时间低于 600ms 则会延迟 600ms 切换
   2. 除了 CONTENT 以外的状态 Layout 都是在首次调用 setViewState 后才会 inflate ,所以设置监听事件的话需要状态修改完成后设置,或者调用 setOnInflaterListener 进行设置
  常量

  [code]public static final int STATE_CONTENT = 10001;
public static final int STATE_LOADING = 10002;
public static final int STATE_EMPTY = 10003;
public static final int STATE_FAIL = 10004;[/code]  代码

   具体代码可以看MultiStateFragment
  Including in your project

   要将 MultiStateView 引入你的项目,需要修改你的 build.gradle
  Add repository

  [code]repositories {
    maven { url 'https://jitpack.io' }
}[/code]  Add dependency

  [code]dependencies {
    compile 'com.github.XuDaojie:MultiStateView:v2.2.1'
}[/code]  喝水不忘挖井人

      Kennyc1012/MultiStateView
   android.support.v4.widget.ContentLoadingProgressBar    License

  Copyright XuDaojie
  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.
  You may obtain a copy of the License at
   http://www.apache.org/licenses/LICENSE-2.0
  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.
友荐云推荐




上一篇:FastPOS Updates in Time for the Retail Sale Season
下一篇:SigOpt In Depth: Building a Better Mousetrap via Multicriteria Bayesian Optimiza
酷辣虫提示酷辣虫禁止发表任何与中华人民共和国法律有抵触的内容!所有内容由用户发布,并不代表酷辣虫的观点,酷辣虫无法对用户发布内容真实性提供任何的保证,请自行验证并承担风险与后果。如您有版权、违规等问题,请通过"联系我们"或"违规举报"告知我们处理。

刘逸翔 发表于 2016-10-20 04:46:21
解释就是掩饰,掩饰就是编故事!  
回复 支持 反对

使用道具 举报

yinghaizhilin 发表于 2016-10-21 10:13:00
沙发位出租
回复 支持 反对

使用道具 举报

我们只是孩子 发表于 2016-10-22 15:19:06
也是蛮拼的
回复 支持 反对

使用道具 举报

尔芙 发表于 2016-10-26 21:05:14
沙发???
回复 支持 反对

使用道具 举报

JSF629 发表于 2016-10-29 23:23:17
这样的好贴不顶不行
回复 支持 反对

使用道具 举报

刘萍 发表于 2016-11-10 01:21:11
宁愿笑着流泪,也不哭着说后悔.
回复 支持 反对

使用道具 举报

tingshang 发表于 2016-11-10 06:13:27
不要和地球人一般见识.
回复 支持 反对

使用道具 举报

樊诗雨 发表于 2016-11-12 09:29:49
曲筱绡、樊胜美、邱莹莹、安迪都会爱上我没有可以让你自豪的长发
回复 支持 反对

使用道具 举报

萌萌的 发表于 2016-11-13 17:31:38
不要迷恋楼主,楼主只是个传说。
回复 支持 反对

使用道具 举报

*滑动验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

我要投稿

推荐阅读

扫码访问 @iTTTTT瑞翔 的微博
回页顶回复上一篇下一篇回列表手机版
手机版/CoLaBug.com ( 粤ICP备05003221号 | 文网文[2010]257号 )|网站地图 酷辣虫

© 2001-2016 Comsenz Inc. Design: Dean. DiscuzFans.

返回顶部 返回列表