安卓自定义view(继承现有的view)

     之前给大家分享了自定义view之组合控件,今天呢,给大家分享一个继续现有的控件,其实继承现有的控件我们平时遇到的还是比较多的,如Edittext 、button都是继承自TextView的,有时候我们写个展示圆形图片的控件也会选择继承现有的Imageview,原本是想写一个圆形控件的,但发现类似这种的博客很多,所有呢,今天仅仅是给大家讲讲继承现有控件的自定义  view的原理,今天我就以Chronometer为基础,给大家讲讲。

    继承现有的控件,实际上是现有控件无法满足你日常开发的需要,所有呢需要在父类控件的基础上对其进行扩展,我今天所将的这个控件和上面说的Edittext、button等一样,都是继承自TextView的,但是呢,这个控件是用来计时的,这个功能呢,就是在TextView的基础上添加的,它继承了textview父类的一切属性,而且用法也特别简单,下面给大家展示一下

<Chronometer
    android:id="@+id/mChronomer_id"
    android:layout_width="0dp"
    android:layout_height="50dp"
    app:layout_constraintLeft_toLeftOf="parent"
    app:layout_constraintRight_toRightOf="parent"
    app:layout_constraintTop_toTopOf="parent"
    android:gravity="center"
    />

布局文件直接添加,使用起来也特简单,我这里写了一个特简单的就是点击button开始和停止计时

mButton.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {

        if (!isstarting){
            isstarting=true;
            mButton.setText("暂停");
            chronometer.setBase(SystemClock.elapsedRealtime());
            chronometer.start();
        }else {
            isstarting=false;
            mButton.setText("开始");
            chronometer.stop();


        }


    }
});

    像上述的setBase、start、stop等方法,都是在TextView进行扩展的,而textView是没有这些方法的,继承现有的控件就是这么简单,在现有的控件不能满足你日常开发的时候,直接用它进行扩展,并且也继承了父类的所有属性,日常开发中应用还是很广泛的。


    

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值