Android开发之View与Layout XML文件之间的理解

前言:

开始研究android开发已经有两个星期之久的,期间遇到很多不解的地方,经过一番努力最终解开了我的疑惑。
依旧担心会忘记,故做一下关于View与Layout XML文件之间的关系总结:

正题:

首先构建两个Layout XML文件A和B,其中A包含了一个GridView或者ListView控件,
![示意图,如无法显示,打开图片链接即可](https://img-blog.csdn.net/20160722094244873)

涉及知识点:
1、Layout XML文件视图的构建
2、BaseAdapter适配器的使用
3、如何将XML渲染成一个View
4、如何获取由XML渲染成的View内的控件ID

解决办法:

1、首先中获得A.xml中GridView(以此为例)控件的ID
GridView gridView = (GridView) findViewById(R.id.gridView);
2、获得ID之后,为GridView添加一个适配器
 gridView.setAdapter(new GridViewAdapter());
3、接下来是继承自BaseAdapter的GridViewAdapter方法的重构,这里重点说一下getView()方法

public View getView(int i, View view, ViewGroup viewGroup) {
            3.1//通过View类的inflate方法在MainActivity活动窗口中将B.xml文件加载并返回一个View
            View newView = View.inflate(MainActivity.this,R.layout.B,null);
            3.2//依旧通过findViewById方法获取控件,不同的是:获取得是newView内的控件,故要加newView进行限定
            TextView textView1 = (TextView)newView.findViewById(R.id.tv_id);
            TextView textView2 = (TextView)newView.findViewById(R.id.tv_name);
            TextView textView3 = (TextView)newView.findViewById(R.id.tv_phone);
            3.3//接下来对获取到的控件进行内容设置即可
            textView1.setText(person.ID[i]+"");
            textView2.setText(person.Name[i]+"");
            textView3.setText(person.Phone[i]+"");
            3.4//最后将由B.xml渲染成的View return出来
            return newView;
            }
小注:
对于将XML渲染成一个View也可以采用如下方法
        LayoutInflater inflater = LayoutInflater.from(活动窗体.this);
        View view = inflater.inflate(Layout XML文件,null);
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值