android ViewSwitcher实现视图的轻松切换

以前在使用listview或者gridview这种东西的时候,如果想要添加一个没有内容时的友好提醒,是在该listview或者gridview的相同位置上,添加一个imageview,然后通过对该控件的visibile进行设置成View.visible或者View.gone方法设置,这种虽然也能实现,但是无疑是比较繁琐的,现在我们有了更好的实现方法,那就是使用ViewSwitcher

示例代码如下:

<ViewSwitcher
                    android:id="@+id/vs_dynamic"
                    android:layout_width="match_parent"
                    android:layout_height="155dp"
                    android:layout_margin="10dp" >

                    <ListView
                        android:id="@+id/lv_dynamic"
                        style="@style/listviewbackground"
                        android:layout_width="match_parent"
                        android:layout_height="155dp"
                        android:layout_margin="10dp" >
                    </ListView>

                    <ImageView
                        android:id="@+id/iv_dynamic_nocontent"
                        style="@style/listviewbackground"
                        android:layout_width="match_parent"
                        android:layout_height="155dp"
                        android:layout_margin="10dp"
                        android:src="@drawable/viewpager3"
                        android:visibility="visible" >
                    </ImageView>

                </ViewSwitcher>

在我们的程序中通过id找到我们的ViewSwitcher

<pre name="code" class="java"><pre name="code" class="java"><span style="font-family: Arial, Helvetica, sans-serif;">ViewSwitcher </span><span style="font-family: Arial, Helvetica, sans-serif;">dynamicViewSwitcher = (ViewSwitcher) findViewById(R.id.vs_dynamic);</span>


然后通过

dynamicViewSwitcher.setDisplayedChild(1);

来设置我们将要显示的是哪一个child视图,在该控件的使用中,需要注意注意的地方是ViewSwitcher只能有两个子视图,不然的话就会异常,如果想要添加比较复杂的view

我们可以考虑使用layout以及使用layout的嵌套

时间: 2024-10-18 09:42:51

android ViewSwitcher实现视图的轻松切换的相关文章

Android技术——视图切换(四)“ViewSwitcher+手势识别”实现视图的滑动切换

Android技术--视图切换(一)~(四)项目的源代码在:https://github.com/YongYuIT/MeiNv_Liulanqi 上文<Android技术--视图切换(三)>实现的图片切换,虽然切换时有动画效果,但是却需要使用按钮才能切换.这个实例中,将尝试用手势识别代替按钮来实现图片切换. 这个实例也是基于前三篇文章里的项目添加而来的. /MeiNv_Liulanqi/res/layout/activity_view_switcher_huadong.xml文件: <R

Android中Activity切换时共享视图元素的切换动画(4.x兼容方案)

同时发布在我的博客 点此进入 开始 上一篇讲了使用 Google 的 AppCompat-v7 来实现 Activity 切换时实现共享视图元素的切换动画.这一篇介绍两个可以兼容 4.x 的两个第三方方案. 上一篇:Android中Activity切换时共享视图元素的切换动画(5.0以上) 方案一:PreLollipopTransition 首先在 build.gradle 配置文件添加这个库依赖 dependencies { compile 'com.kogitune:pre-lollipop

Android中使用ImageViewSwitcher实现图片切换轮播导航效果

前面写过了使用ViewFlipper和ViewPager实现屏幕中视图切换的效果(未实现轮播)附链接: Android中使用ViewFlipper实现屏幕切换 Android中使用ViewPager实现屏幕页面切换和页面切换效果 今天我们在换一种实现方式ImageViewSwitcher. ImageSwitcher是Android中控制图片展示效果的一个控件,如:幻灯片效果 ImageSwitcher粗略的理解就是ImageView的选择器. ImageSwitcher的原理:ImageSwi

Android 自定义View视图

创建全新的视图将满足我们独特的UI需求. 本文介绍在指南针开发中会用到的罗盘的界面UI,通过继承View类实现的自定义视图,以此来深刻了解自定义视图. 实现效果图: 源代码: 布局文件activity_main(其中CompassView继承View类): <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.

android 控制手机音量的大小 切换声音的模式

(1)程序说明 在android API的AudioManager中,提供了调节手机音量的办法. audioMa.adjustVolume(AudioManager.ADJUST_LOWER, 0); audioMa.adjustVolume(AudioManager.ADJUST_RAISE, 0); 也可以调节手机声音的模式为震动或者静音 audioMa.setRingerMode(AudioManager.RINGER_MODE_NORMAL); audioMa.setRingerMode

android下apkplug通用主题(皮肤)切换解决方案之主题包开发-02

该文章是基于apkplug V1.6.8 进行说明的 我们提供了一个demo做为参考,项目下载地址为:http://git.oschina.net/plug/IMThemeDemo 该 IMThemeDemo 实现了简单的聊天泡泡切换功能,同时主题包(插件)是托管在apkplug的云服务器上的.所以要阅读项目的完整代码可以先看插件托管服务开发系列文章 <插件托管服务开发指南> demo运行效果图: 上一篇文章我们实现了主应用的开发,本篇应用我们开发主题包(插件). 一,主题包说明 apkplu

android 显示自定义视图对话框

activity_main.xml: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <Button a

ANDROID自己定义视图——onLayout源代码 流程 思路具体解释

简单介绍: 在自己定义view的时候.事实上非常easy.仅仅须要知道3步骤: 1.測量--onMeasure():决定View的大小 2.布局--onLayout():决定View在ViewGroup中的位置 3.绘制--onDraw():怎样绘制这个View. 而第3步的onDraw系统已经封装的非常好了,基本不用我们来担心,仅仅须要专注到1,2两个步骤就中好了. 第一步的測量,能够參考我之前的文章:(ANDROID自己定义视图--onMeasure流程.MeasureSpec具体解释) 而

[Android] 任意时刻从子线程切换到主线程的实现原理及加强版

======================================================== 作者:qiujuer 博客:blog.csdn.net/qiujuer 网站:www.qiujuer.net 开源库:Genius-Android 转载请注明出处:http://blog.csdn.net/qiujuer/article/details/41900879 ========================================================