首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >一个最最最简单的自定义控件(Textview)

一个最最最简单的自定义控件(Textview)

作者头像
计蒙不吃鱼
发布2025-06-11 20:30:55
发布2025-06-11 20:30:55
1610
举报
文章被收录于专栏:Android开发Android开发

要这样自定义控件的原因: 需求:一个界面两个跑马灯(在xml中实现) Textview在xml文件中实现跑马灯,如果有两个跑马灯,则会出现抢焦点的现象,只会跑一个 解决方法: 自定义一个Textview,设置其自动获得焦点: isFocused();

实现具体如下:解释在注释里面

Java文件中代码:

代码语言:javascript
复制
public class MyTextView extends TextView {
    //在用代码创建的时候调用
    public MyTextView(Context context) {
        this(context, null);
    }

    //在识别XML的时候会调用此方法创建Textview,底层会用反射去AttribestSet去取属性值
    public MyTextView(Context context, @Nullable AttributeSet attrs) {
        this(context, attrs, 0);
    }

    //给第一个构造函数和第二个使用
    public MyTextView(Context context, @Nullable AttributeSet attrs, int defStyleAttr) {
        super(context, attrs, defStyleAttr);
    }

    //解决一个问题,需要Textview天生获取焦点
    @Override
    public boolean isFocused() {
        return true;
    }
}

在xml文件中使用该控件:

代码语言:javascript
复制
    <yf.changsha.com.view.MyTextView
        android:layout_width="match_parent"
        android:layout_height="40dp"
        android:ellipsize="marquee"
        android:focusable="true"
        android:focusableInTouchMode="true"
        android:marqueeRepeatLimit="marquee_forever"
        android:singleLine="true"
        android:text="wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww" />

    <yf.changsha.com.view.MyTextView
        android:layout_width="match_parent"
        android:layout_height="40dp"
        android:ellipsize="marquee"
        android:focusable="true"
        android:focusableInTouchMode="true"
        android:marqueeRepeatLimit="marquee_forever"
        android:singleLine="true"
        android:text="wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww" />
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019-07-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档