编程知识 购物 网址 新闻 笑话 | 软件 日历 阅读 图书馆 China 头条阅读 学淘股 China Travel
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
vbs/VBScript DOS/BAT hta htc python perl 游戏相关 VBA 远程脚本 ColdFusion ruby专题 autoit seraphzone PowerShell linux shell Lua Golang Erlang 其它教程 CSS/HTML/Xhtml html5 CSS XML/XSLT Dreamweaver教程 经验交流
站长资讯 .NET新手 ASP.NET C# WinForm Silverlight WCF CLR WPF XNA VisualStudio ASP.NET-MVC .NET控件开发 EntityFramework WinRT-Metro Java C++ PHP Delphi Python Ruby C语言 Erlang Go Swift Scala R语言 Verilog 其它语言 架构设计 面向对象 设计模式 领域驱动 Html-Css JavaScript jQuery HTML5 SharePoint GIS技术 SAP OracleERP DynamicsCRM K2 BPM 信息安全 企业信息 Android开发 iOS开发 WindowsPhone WindowsMobile 其他手机 敏捷开发 项目管理 软件工程 SQLServer Oracle MySQL NoSQL 其它数据库 Windows7 WindowsServer Linux
   -> Android开发 -> 学习下关于ViewStub实例的用法及带Drawable的TextView的妙用 -> 正文阅读

[Android开发]学习下关于ViewStub实例的用法及带Drawable的TextView的妙用

      在项目中,我们可能有多种数据来源比如:




里面有ListView也有当获得数据为空的时候显示的空信息。根据点击的项目还是差事不同,显示的空消息也不同。a.没有收藏的项目,b目前没有收藏的差事。
其实实现方法很多。也都可以实现。不过用viewStub在这里最恰当不过了。
先看此Activity的布局吧。布局文件:

<

FrameLayout android:id="@+id/layoutFrm"


        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:background

="@color/background_color" > <ListView xmlns:ptr="http://schemas.android.com/apk/res-auto"


            android:id="@+id/lstV_fav_task"
            -----------若干你懂得-------
            ptr:ptrMode

="pullFromEnd" > </com.handmark.pulltorefresh.library.PullToRefreshListView> <ViewStub android:id="@+id/viewStub"


            android:layout_gravity="center"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout

="@layout/activity_task_favourite_nodata" /> </FrameLayout>
在代码里初始化下!那这个ViewStub加载的布局文件的activity_task_favorite_nodata又在哪里呢?
看布局:
<?xml version="1.0" encoding="utf-8"?> <TextView xmlns:android="http://schemas.android.com/apk/res/android"


    android:id="@+id/txtV_nodata"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center"
    android:drawablePadding="20dp"
    android:drawableTop="@drawable/favourite_nodata"
    android:gravity="center_horizontal"
    android:text="@string/my_task_fav_nodata"
    android:textColor

="@color/listview_header_textcolor" />
那等于说介个布局其实就是个Textview了。闹了半天,我以为还要搞个Textview还要高个Imageview,弱爆了,啥都不懂出来混看人家写的我又悲剧了。

(就是这个drawable/favourite_nodata.png文件啦)
代码里该怎么办呢?先设置为不可见(预加载下)干。不难。关键道哥不学习。
layoutEmpty =

 (TextView) viewStub.inflate();
        layoutEmpty.setVisibility(View.GONE);

肯定要获取数据了。。那得有个方法。在这里:

private void getFavProjects()


得到数据里,判断datalist.size 。。。有了。。。下面你懂得


private void setEmptyViewByDataList(int type) {
        if (datalist.size() > 0) {
            layoutEmpty.setVisibility(View.GONE);
        } else {
            if (type == TYPE_PROJECT)
                layoutEmpty.setText(R.string.my_project_fav_nodata);
            else
                layoutEmpty.setText(R.string.my_task_fav_nodata);
            layoutEmpty.setVisibility(View.VISIBLE);
        }
    }



  Android开发 最新文章
Android动态权限申请
使用Kotlin,抛弃findViewById
.net程序员做的第一个安卓APP
Android学习笔记
计算机毕业设计源码分享
计算机毕业设计源码分享
ELF Format 笔记(一)—— 概述
Fragment学习笔记
Android复制Assets目录下的文件到指定目录
Android网络请求框架AsyncHttpClient实例详
上一篇文章      下一篇文章      查看所有文章
加:2015-03-30 07:50:33  更:2017-05-16 20:14:26 
 
360图书馆 软件开发资料 购物精选 新闻资讯 Chinese Culture 三丰软件 开发 中国文化 阅读网 头条阅读 学淘股 China Travel 日历 万年历 2020年7日历
2020-7-6 17:05:36
多播视频美女直播
↓电视,电影,美女直播,迅雷资源↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  编程知识