精华内容
下载资源
问答
  • 给Button或TextView设置drawableLeft图片(左图标) Button继承TextView,所以设置方法相同   1、XML方式 android:drawableLeft="@drawable/btn_strip_mark_on"> 复制代码 2、JAVA...

    给Button或TextView设置drawableLeft图片(左图标)



    Button继承TextView,所以设置方法相同
    3.jpg 

    1、XML方式
    1. <Button android:drawableLeft="@drawable/btn_strip_mark_on"></Button>
    复制代码
    2、JAVA代码
    1. Drawable img_on, img_off;
    2. Resources res = getResources();
    3. img_off = res.getDrawable(R.drawable.btn_strip_mark_off);
    4. // 调用setCompoundDrawables时,必须调用Drawable.setBounds()方法,否则图片不显示
    5. img_off.setBounds(0, 0, img_off.getMinimumWidth(), img_off.getMinimumHeight());
    6. btn.setCompoundDrawables(img_off, null, null, null); //设置左图标
    复制代码
    展开全文
  • TextView 可以使用android:drawableTop/Left/Right/Bottom属性在activity的xml中设置图片位置,但是不能控制drawable的大小,只能控制和文字之间的padding属性。 实现 通过继承TextView 重写 setCompoundDrawables...

    TextView Drawable

    给自己看系列

    TextView 可以使用android:drawableTop/Left/Right/Bottom属性在activity的xml中设置图片位置,但是不能控制drawable的大小,只能控制和文字之间的padding属性。

    实现

    通过继承TextView 重写 setCompoundDrawables 方法来控制Drawable大小

    代码如下

    /**
     * @description 
     * @author msp
     * @time 2021/3/17
     */
    class BottomTabTextView @JvmOverloads constructor(
        context: Context, attrs: AttributeSet? = null, defStyleAttr: Int = 0
    ) : AppCompatTextView(context, attrs, defStyleAttr) {
    
        override fun setCompoundDrawables(left: Drawable?, top: Drawable?, right: Drawable?, bottom: Drawable?) {
            top?.setBounds(0, 0, DisplayUtils.dp2px(this.context, 30f), DisplayUtils.dp2px(this.context, 30f))
            super.setCompoundDrawables(left, top, right, bottom)
        }
    
    }
    

    代码中的DisplayUtils工具类就是dp转px的工具,通过这种方法,可以设置drawable的大小位置。

    展开全文
  • Android之继承Textview的Button的介绍

    千次阅读 2016-06-29 19:07:33
    Button继承TextView a)配置Button,为其添加ID及相关属性 在Activity onCreate()方法中获取到该控件, 为其添加监听器,实现点击Button时显示Toast提示框b)为Button设置background属性,该属性可以是颜色, ...

    Button继承了TextView
    a)配置Button,为其添加ID及相关属性
    在Activity onCreate()方法中获取到该控件,
    为其添加监听器,实现点击Button时显示Toast提示框

    b)为Button设置background属性,该属性可以是颜色,
    静态图片和shape的边框文件。但是这情况下单击按钮
    不会出现任何效果。
    使用selecter文件实现Button点击和释放是显示不同效果
    selector:可以理解为一个背景选择器,
    当按钮处于哪个状态的时候就会调用对应得item
    例如:按钮的背景的改变
    按钮的字体改变
    点击按钮可以隐藏和显示另外一个按钮
    代码如下:

    <?xml version="1.0" encoding="utf-8"?>
    <selector xmlns:android="http://schemas.android.com/apk/res/android" >
    
        <item 
            android:state_pressed="false"
            android:drawable="@drawable/domob_next"
            ></item>
        <item 
            android:state_pressed="true"
            android:drawable="@drawable/domob_next_off"
            ></item>
    </selector>
    

    c)练习使用9patch制作图片,实现不同缩放效果
    当按钮的内容太多时,android会自动缩放整张图片,
    以保证背景图片能覆盖整个按钮。但是这种缩放整张
    图片的效果可能并不好,可能只想缩放图片中某个部
    分,这样才能保证按钮的视觉效果。9Patch可以到达
    这种效果,这种图片以.9.png结尾。

    d)使用Button的onClick属性
    xml中设置组件是否可见:
    android:visibility=”visible”
    组件可见
    android:visibility=”gone”
    组件不可见,
    并且释放在界面所占的空间
    android:visibility=”invisible”
    组件不可见
    不会释放在界面所占的空间

    展开全文
  • 编写不易,如有转载,请声明出处: 梦回河口:http://blog.csdn.net/zxc514257857/article/details/70184606实现原理:自定义一个MarqueeTextView类,继承Text,将MarqueeTextView强制设置为被选中状态,然后一直进行...

    编写不易,如有转载,请声明出处: 梦回河口:http://blog.csdn.net/zxc514257857/article/details/70184606

    实现原理

      自定义一个MarqueeTextView类,继承Text,将MarqueeTextView强制设置为被选中状态,然后一直进行滚动。

    Demo展示图片

    这里写图片描述

    实现代码如下

    //布局代码
    //(layout)activity_main.xml
    <RelativeLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:id="@+id/activity_main"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        tools:context="com.test.marqueetextview.activity.MainActivity">
    
        <TextView
            android:id="@+id/title1"
            android:paddingTop="10dp"
            android:paddingLeft="10dp"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="姓名:"/>
    
        <com.test.marqueetextview.view.MarqueeTextView
            android:id="@+id/name1"
            android:paddingTop="10dp"
            android:layout_toRightOf="@+id/title1"
            android:layout_width="50dp"
            android:layout_height="wrap_content"
            android:singleLine="true"
            android:ellipsize="marquee"
            android:marqueeRepeatLimit="marquee_forever"
            android:text="尼古拉斯赵四"/>
    
        <TextView
            android:id="@+id/title2"
            android:layout_marginTop="10dp"
            android:layout_below="@+id/title1"
            android:paddingTop="10dp"
            android:paddingLeft="10dp"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="姓名:"/>
    
        <com.test.marqueetextview.view.MarqueeTextView
            android:id="@+id/name2"
            android:layout_marginTop="10dp"
            android:paddingTop="10dp"
            android:layout_below="@+id/name1"
            android:layout_toRightOf="@+id/title2"
            android:layout_width="50dp"
            android:layout_height="wrap_content"
            android:singleLine="true"
            android:ellipsize="marquee"
            android:marqueeRepeatLimit="marquee_forever"
            android:text="郭达斯坦森"/>
    
    </RelativeLayout>
    -------------------------------------------------------------------
    //自定义控件代码
    //(view)MarqueeTextView
    import android.content.Context;
    import android.util.AttributeSet;
    import android.widget.TextView;
    
    /**
     * 具有跑马灯效果的TextView
     * 实际上就是将使用这个MarqueeTextView控件的全部设置为强制被选中
     */
    
    public class MarqueeTextView extends TextView{
    
        public MarqueeTextView(Context context) {
            super(context);
        }
    
        public MarqueeTextView(Context context, AttributeSet attrs, int defStyleAttr) {
            super(context, attrs, defStyleAttr);
        }
    
        public MarqueeTextView(Context context, AttributeSet attrs) {
            super(context, attrs);
        }
    
        /**强制被选中*/
        @Override
        public boolean isFocused() {
            return true;
        }
    }
    -------------------------------------------------------------------
    //activity代码
    //(activity)MainActivity
    import android.support.v7.app.AppCompatActivity;
    import android.os.Bundle;
    import com.test.marqueetextview.R;
    
    public class MainActivity extends AppCompatActivity {
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
        }
    }

    Demo下载请移步:http://download.csdn.net/detail/zxc514257857/9815066


    ———-因本人才疏学浅,如博客或Demo中有错误的地方请大家随意指出,与大家一起讨论,共同进步,谢谢!———-

    展开全文
  • 在我们开发中,TextView设置Android:drawableLeft一定使用的非常多,但Drawable和Text同时居中显示可能不好控制,有没有好的办法解决呢? 小编的方案是通过自定义TextView实现。 实现的效果图: 注:第一行为原生...
  • 在我们开发中,TextView设置android:drawableLeft一定使用的非常多,但Drawable和Text同时居中显示可能不好控制,有没有好的办法解决呢? 我的方案是通过自定义TextView实现。 实现的效果图:注:第一行为原生...
  • Android中有时需动态设置控件四周的drawble图片,这个时候就需要调用 setCompoundDrawables(left, ...Button继承TextView,所以可以采用相同的设置方法 方法一.XML方式 <TextView android:id="@+id/bo...
  • Android-自定义TextView和异步加载图片的实现     实例:ConstomTextView 实现步骤: 1. 定义一个继承LinearLayout的类:ConstomTextView 2. 在ConstomTextView类中自定义setText()方法 3.在setText方法中...
  • 1. 编写一个继承TextView 类的自定义组件,并在 onDraw 事件方法中画边框 2. 使用9-patch 格式的图像作为TextView的背景图来设置边框(这个背景图需要带一个边框) 关于使用9-patch格式的图像来作为背景图,可以在 %...
  • android 为TextView添加边框

    千次阅读 2018-08-19 10:39:01
    使用xml的shape设置3继承TextView覆写onDraw方法。 方法一: 带有透明图片的背景图,这个没有什么好将的,自己制作一个就行 ,然后设置background就可以了 方法二: 通过shape来设置背景图片 ...
  • 一、TextView Button是继承TextView,TextView有的,同样Button也有以下特点: 1、空格占位法 2、首行缩进 3、设置文字 + 图片 4、设置字形
  • 目标是设置textview的中一段文字的显示属性,例如指定文字要下划线显示(@XXX、#XXX#),文字替换成图片,文字加重、变色、变大等。 实现的基本思路都是将指定的文字找出来,然后用实现Spananble接口的子类覆盖,...
  • android中TextView图文混排

    千次阅读 2012-04-18 22:22:04
    android基本控件中,有很多控件继承TextView,可以说这是个基础中的基础控件。 在TextView中要实现图文混排,最简单的方法,就是在布局配置文件中,当设置好了TextView的文字内容之后,设置TextView的一个属性...
  • 方法二:通过shape来设置背景图片首先一个textview_border.xml文件放在drawable文件夹里面为要添加边框的TextView添加一个backgroundandroid:background="@drawable/textview_border"方法三:编写一个继承TextView类...
  • 方法一:   比较土 ,加背景图片,透明的带边框的背景图片 设置到android:background就可以     ...编写一个继承TextView类的自定义组件,并在onDraw事件方法中画边框。 然后 在布局文件 中 使用

空空如也

空空如也

1 2 3 4 5 6
收藏数 106
精华内容 42
关键字:

继承textview设置图片