Android动态添加View的问题解决方法

2016-02-19 09:44 31 1 收藏

关注图老师设计创意栏目可以让大家能更好的了解电脑,知道有关于电脑的更多有趣教程,今天给大家分享Android动态添加View的问题解决方法教程,希望对大家能有一点小小的帮助。

【 tulaoshi.com - 编程语言 】

后台代码
代码如下:

    private void ChangeView()
    {
        ly.removeAllViews();
        LayoutInflater inflater = (LayoutInflater)getSystemService(LAYOUT_INFLATER_SERVICE);
        View layout = inflater.inflate(R.layout.grid,null);
        GridView gridview = (GridView)layout.findViewById(R.id.gridview);
        gridview.setAdapter(new ItemAdapter(MainActivity.this));
        gridview.setOnItemSelectedListener(new OnItemSelectedListener() {

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)

            public void onItemSelected(AdapterView arg0, View arg1,
                    int arg2, long arg3) {
            }
            public void onNothingSelected(AdapterView arg0) {
            }
        });

        ly.addView(gridview);
    }

 代码说明:

        a).  ly为main.xml中id为ContentView的LinearLayout,即需动态添加View的容器

        b).  ItemAdapter为Grid填充数据的辅助类

      现象

        正常

      如果把grid.xml中GridView的代码直接复制粘贴到main.xml中LinearLayout容器内没有任何问题,布局正常。

        不正常

      如上动态添加android:layout_height="fill_parent"就失效,不管这里设置绝对数值如300dp也不行,GridView始终只显示有Item的内容,即容器内的View无法完全填充LinearLayout父容器。

  三、 解决代码

    就一行代码,不知道是Android的Bug还是怎么:
代码如下:

ly.addView(gridview,new LinearLayout.LayoutParams(LinearLayout.LayoutParams.FILL_PARENT, LinearLayout.LayoutParams.FILL_PARENT));

结束

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)

  这个问题烦了我两个小时+,不管怎么说还是解决了,开心ing。

来源:http://www.tulaoshi.com/n/20160219/1591950.html

延伸阅读
《死亡空间3》延迟乱码问题解决方法 如果发现一直处在瞄准状态,请取消大写锁定。 如果蓝屏,请自行调节画质为自定义或最低。 鼠标有延迟是因为从xbox移植没有去掉鼠标平滑。 汉化提示错误的请重装游戏重打注册表再汉化。 乱码问题查看有无卸载关键字库,死亡空间3汉化字体应该是雅黑,那就重打雅黑字库。 以上两条若尝试无效则等待新版...
标签: 浏览器
此网站的安全证书有问题解决方法   出现此提示的原因,一是网站的问题,而是自身电脑的问题,网站的问题我们无力改变,我们可以尝试修复自身电脑可能存在的问题。 一、检查电脑时间 查看电脑右下角时间和日期是否正确,如果不正确要点击更正。 二、安装网站证书 如果网站(比如12306)已提供安全证书,那么...
标签: 电脑入门
在Windows XP中,往往会因各种原因导致无法共享打印机,这个时候你是不是束手无策了?解决问题需要对症下药,让我们来了解一下在 Windows XP 中共享打印机时最容易出现的种种问题以及解决办法。 现象一:网上邻居无法正常浏览 在Windows XP中共享打印机,首先要做的并不是直接在工作站中安装网络打印机,而是应该先看看网上邻居中的查看工作组...
一、为 SQL 启用远程连接 1. 单击“开始”,依次指向“程序”、“Microsoft SQL Server 2005”和“配置工具”,然后单击“SQL Server 外围应用配置器”。 2. 在“SQL Server 2005 外围应用配置器”页上,单击“服务和连接的外围应用配置器”。 3. 在“服务和连接的外围应用配置器”页上,展开“数据库引擎”,依次单击“远程连接”和“本...
标签: Web开发
Q0,新手必看教程: 第一步,jQuery中文入门指南,翻译加实例,jQuery的起点教程 第二步,下载手册方便查询(jQuery 1.41 中文API文档 chm版) 第三步,深刻了解jQuery对象和普通DOM对象的区别。互相转化见Q1 Q1,js的写法:document.getElementById('save').disabled=true; 在jquery中我是这样写的$("#save").disabled = true; 为什么没效...

经验教程

955

收藏

39
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部