Android 实现两个list分别出现(在某一时刻只出现一个控件)
第一种方法:
在.xml文件中将这两个List分别放入不同的布局管理器中,比如说
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content" > <LinearLayout
android:id="@+id/citylist_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" > <ExpandableListView
android:id="@+id/expandablelist"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="36.56"
android:background="#ffffff"
android:cacheColorHint="#00000000"
android:childDivider="@android:color/darker_gray"
android:divider="@android:color/black"
android:dividerHeight="1.5dip"
android:listSelector="#00000000" />
</LinearLayout> <LinearLayout android:id="@+id/localmap_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" > <ListView
android:id="@+id/listView"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#ffcc99"
android:visibility="visible" > </ListView> </LinearLayout>
</RelativeLayout>
上面一个ExpandableListView 一个ListView分别放入两个
LinearLayout布局中。 在MainActivity.java文件中写入如下代码
LinearLayout cl = (LinearLayout) findViewById(R.id.citylist_layout);
LinearLayout lm = (LinearLayout) findViewById(R.id.localmap_layout);
lm.setVisibility(View.VISIBLE);
cl.setVisibility(View.GONE); LinearLayout cl = (LinearLayout) findViewById(R.id.citylist_layout);
LinearLayout lm = (LinearLayout) findViewById(R.id.localmap_layout);
lm.setVisibility(View.GONE);
cl.setVisibility(View.VISIBLE);
就可实现两个ListView在同一时刻只出现一个。
<友情提示 View.GONE 不要替换成 View.INVISIBLE 可能出错
希望能搞明白
View.GONE
View.VISIBLE
View.INVISIBLE
三者的区别
>
第二种方法:使用Fragment
需要注意的是,如果报错如
java.lang.IllegalStateException The specified child already has a parent. You must call removeView() on the child's parent first
我犯错的原因是在继承Fragment的子类实现方法
public View onCreateView(LayoutInflater inflater,ViewGroup container, Bundle savedInstanceState)
{
View =inflater.inflate(R.layout.xxx,contauner,true);
return v;
}
解决办法
1. 参数 true 改为 false
public View onCreateView(LayoutInflater inflater,ViewGroup container, Bundle savedInstanceState)
{
View =inflater.inflate(R.layout.xxx,contauner,false);
return v;
}
2改用另外一个方法参数
public View onCreateView(LayoutInflater inflater,ViewGroup container, Bundle savedInstanceState)
{
View =inflater.inflate(R.layout.xxx,null);
return v;
}
Android 实现两个list分别出现(在某一时刻只出现一个控件)的更多相关文章
- android 让一个控件按钮居于底部的几种方法
android 让一个控件按钮居于底部的几种方法1.采用linearlayout布局:android:layout_height="0dp" <!-- 这里不能设置fill_ ...
- [转]android 让一个控件按钮居于底部的几种方法
本文转自:http://www.cnblogs.com/zdz8207/archive/2012/12/13/2816906.html android 让一个控件按钮居于底部的几种方法 1.采用lin ...
- android自定义控件(6)-详解在onMeasure()方法中如何测量一个控件尺寸
今天的任务就是详细研究一下protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec)方法.如果只是说要重写什么方法有什么 ...
- android:怎么实现一个控件与另一个指定控件左对齐
https://segmentfault.com/q/1010000003905460?_ea=425861 针对你这种情况,最简单的一种办法是,设置两个TextView的宽度为固定值,且相等. Li ...
- Android简易实战教程--第四十九话《满屏拖动的控件》
今天做个有意思的效果吧,控件的拖拽,简单实用,逻辑清晰点3分钟看完. 说的很高大上,其实就是拖动Button按钮跟着鼠标位置满手机屏幕跑罢了. 直接上简单的代码吧: public class Main ...
- android只设置部分控件随着软键盘的出现而腾出空间
转载请标明出处:https://www.cnblogs.com/tangZH/p/12013685.html 在项目过程中,出现了一个需求,软键盘要顶起部分控件,而另一部分控件不动. 关于这种需求,我 ...
- 【Android开发日记】之入门篇(十四)——Button控件+自定义Button控件
好久不见,又是一个新的学期开始了,为什么我感觉好惆怅啊!这一周也发生了不少事情,节假日放了三天的假(好久没有这么悠闲过了),实习公司那边被组长半强制性的要求去解决一个后台登陆的问题,结果就是把 ...
- Android基础控件TextClock和Chronometer的使用
1.简介 DigitalClock, TextClock,AnalogClock,Chronometer其中DigitalClock和AnalogClock废弃了! TextClock是在Androi ...
- Android开发之基本控件和详解四种布局方式
Android中的控件的使用方式和iOS中控件的使用方式基本相同,都是事件驱动.给控件添加事件也有接口回调和委托代理的方式.今天这篇博客就总结一下Android中常用的基本控件以及布局方式.说到布局方 ...
随机推荐
- 【大数据】Spark基础解析
第1章 Spark概述 1.1 什么是Spark 1.2 Spark内置模块 Spark Core:实现了Spark的基本功能,包含任务调度.内存管理.错误恢复.与存储系统交互等模块.Spark Co ...
- Day 4 学习笔记 各种图论
Day 4 学习笔记 各种图论 图是什么???? 不是我上传的图床上的那些垃圾解释... 一.图: 1.定义 由顶点和边组成的集合叫做图. 2.分类: 边如果是有向边,就是有向图:否则,就是无向图. ...
- 文件同步工具 lsyncd2.1.6 安装使用问题
项目有文件实时同步备份的需求,做了一下调查,比较好的解决方法是使用lsyncd工具.这里主要记录一下遇到的问题及解决方法. lsyncd 的相关介绍和对比可见: lsyncd实时同步搭建指南——取代r ...
- Trailing Zeroes (II) LightOJ - 1090(预处理+前缀和)
求C(n,r)*p^q的后缀零 考虑一下 是不是就是求 10^k*m 的k的最大值 而10又是由2 和 5 组成 所以即是求 2^k1 * 5^k2 * m1 中k1和k2小的那一个数 短板效应嘛 ...
- 【2018CCPC秦皇岛】
递推式的线段树可以用矩阵维护.
- 【LaTex】随便学学,
教程 http://blog.csdn.net/u014803202/article/details/50410748 一个数学公式编辑器 http://latex.91maths.com/
- Shell中[]里面的条件判断
1.字符串判断 str1 = str2 当两个串有相同内容.长度时为真 str1 != str2 当串str1和str2不等时为真 -n str1 当串的长度大于0时为真(串非空) -z str1 当 ...
- Linux内核分析期中知识点总结
Linux内核分析期中知识点总结 1. 计算机是如何工作的 存储程序计算机工作模型:冯诺依曼体系结构 X86汇编基础 会变一个简单的C程序分析其汇编指令执行过程 2. 操作系统是如何工作的 函数调用堆 ...
- git pull 总要求输入账号和密码解决?
如果你用git从远程pull拉取代码,每次都要输入密码,那么执行下面命令即可 git config --global credential.helper store 这个命令则是在你的本地生成一个账号 ...
- Android 65535 问题与 MultiDex分包
Android Multidex 遇到的问题 http://blog.csdn.net/wangbaochu/article/details/51178881 Android 使用android-su ...