【学习笔记】Android自定义控件

本文是在学习郭霖大神的《第一行代码-Android》中关于“自定义控件”的总结。

相似的方法,如果新的方法没有什么特别的优势,我还是会用旧的方法。一直以来我都不理解在布局文件中使用包名作为一个控件,也不知道这种方法的好处,所以我从来不用。在以前接触的书中对自定义控件没有讲解,在我看的网上的Demo上,我也感觉不到自定义控件的优势,所以一直以来我还是用系统给的控件。我曾试图从网上搜索学习自定义控件,但是没有讲解很到位的。当我看到《第一行代码-Android》时,我做的第一件事情,就是找找有没有关于“用包名做控件”的介绍。我终于找到了。

自定义的布局能够实现更复杂、更符合我们期望的功能,当然也能提高我们的编程效率。

自定义控件是需要指定完整的类名的,所以我们先新建一个类TitleLayout继承自LinearLayout。

public class TitleLayout(Context context, AttributeSet attrs){
    public TitleLayout(Context context, AttributeSet attrs){
        super(context, attrs);
        LayoutInflater.from(context).inflate(R.layout.title, this);
    }
}
在这个类中,我们重新了LinearLayout中的带两个参数的构造函数,在布局中引入TitleLayout控件就会调用这个构造函数。

现在自定义控件已经创建好了,现在我们需要在布局文件中添加这个自定义控件:

<pre name="code" class="java"><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
    <com.example.uicustomviews.TitleLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content">
    </com.example.uicustomviews.TitleLayout>
</
LinearLayout
>

 








  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值