自定义View的几种方法

本文介绍了自定义View的三种方法:组合控件、继承控件和自绘控件。组合控件通过组合系统原生控件实现,如创建内容分类条;继承控件在现有控件基础上增加新功能;自绘控件则完全自行绘制内容,例如创建了一个计数器View,响应点击并自动计数。
摘要由CSDN通过智能技术生成

如果说要按类型来划分的话,自定义View的实现方式大概可以分为三种,组合控件继承控件以及自绘控件。那么下面我们就来依次学习一下,每种方式分别是如何自定义View的。

、组合控件

   组合控件的意思就是,我们并不需要自己去绘制视图上显示的内容,而只是用系统原生的控件就好了,但我们可以将几个系统原生的控件组合到一起,这样创建出的控件就被称为组合控件。

举个例子来说,内容分类条就是个很常见的组合控件(如下图),很多内容部都会放置一个内容分类条上面有内容对应的分类和获取更多的按钮,点击更多后就可以进入获取更多的页面。那么下面我们就来尝试去实现


新建一个titlebar.xml,代码如下所示:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/layout"
    android:layout_width="match_parent"
    android:layout_height="50dp"
    android:background="#f8f8f8"
    android:orientation="horizontal" >

    <TextView
        android:id="@+id/layout_title"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerVertical="true"
        android:layout_marginLeft="10dip"
        android:text="专辑"
        android:textSize="18sp" />

    <TextView
        android:id="@+id/getMore"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:layout_centerVertical="true"
        android:layout_marginRight="20dip"
        android:drawablePadding="10dp"
        android:drawableRight="@drawable/btn_manage_more"
        android:text="更多" />

</RelativeLayout>

      在这个布局里,TextViewtitle)就是内容分类的标题,TextViewgetMore)就是获取更多的“按钮”。

      接下来创建TitleView继承RelativeLayout,代码如下:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值