自定义 EditText 和 Button

实现效果图

1.edittext

布局中添加控件

<EditText
        android:layout_width="150dp"
        android:layout_height="45dp"
        android:layout_gravity="center"
        android:layout_marginTop="20dp"
        android:background="@drawable/bg_edittext"
        android:hint="@string/request_code"
        android:padding="5dip"
        android:singleLine="true"
        android:textColorHint="#AAAAAA"
        android:textSize="15sp" />

自定义bg_edittext.xml

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:state_window_focused="false"><shape android:shape="rectangle">
            <solid android:color="@android:color/white" />

            <corners android:radius="10dp" />

            <stroke android:width="2dp" android:color="@color/grey" />
        </shape></item>
    <item android:state_focused="true"><shape android:shape="rectangle">

            <!-- 填充   solid固体 -->
            <solid android:color="@android:color/white" />
            <!-- 圆角   corners角落 -->
            <corners android:radius="5dp" />
            <!-- 描边 -->
            <stroke android:width="2dp" android:color="@color/title_color" />
        </shape></item>

</selector>

2. Button

<Button
        android:id="@+id/btn_make_sure"
        style="@style/MenuItemButtonStyle"
        android:layout_width="150dp"
        android:layout_height="45dp"
        android:text="@string/make_sure"
        android:visibility="visible" />
<!—菜单Button的样式 -->
    <style name="MenuItemButtonStyle">
        <item name="android:layout_width">100dp</item>
        <item name="android:layout_height">30dp</item>
        <item name="android:layout_gravity">center</item>
        <item name="android:textColor">@color/white</item>
        <item name="android:layout_margin">8dp</item>
        <item name="android:background">@drawable/slidingmenu_login_btn</item>
    </style>

slidingmenu_login_btn.xml

<?xml version="1.0" encoding="UTF-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:state_pressed="true"><shape android:shape="rectangle">

            <!-- 填充的颜色 -->
            <solid android:color="@color/violet" />
            <!-- 设置按钮的四个角为弧形 -->
            <!-- android:radius 弧形的半径 -->
             <corners android:bottomLeftRadius="10dp" android:bottomRightRadius="10dp" android:topLeftRadius="10dp" android:topRightRadius="10dp" />

            <!-- padding:Button里面的文字与Button边界的间隔 -->
            <padding android:bottom="2dp" android:left="2dp" android:right="2dp" android:top="2dp" />
        </shape></item>
    <item><shape android:shape="rectangle">

            <!-- 填充的颜色 -->
            <solid android:color="@color/title_color" />
            <!-- 描边 -->
            <stroke android:width="1dp" android:color="@color/white" />

            <!-- 设置按钮的四个角为弧形 -->
            <!-- android:radius 弧形的半径  注意radius超过10dp就要详细设置上下左右 -->
            <corners android:bottomLeftRadius="10dp" android:bottomRightRadius="10dp" android:topLeftRadius="10dp" android:topRightRadius="10dp" />

            <!-- padding:Button里面的文字与Button边界的间隔 -->
            <padding android:bottom="2dp" android:left="2dp" android:right="2dp" android:top="2dp" />
        </shape></item>

</selector>
时间: 2024-10-13 02:37:14

自定义 EditText 和 Button的相关文章

登录界面、AutoUtils 屏幕适配、自定义Edittext(显示密码可见和一键清空)和 TextInputLayout的使用。

登录界面: AutoUtils自动屏幕适配: AutoUtils屏幕适配使用的方法 : 1.将AutoUtils类复制到要适配的项目中: 2.在程序的入口(清单文件filter):super.onCreate(savedInstanceState);//屏幕适配,这里是以720*1280分辨率为基准的适配AutoUtils.setSize(this, false, 720, 1280); * 这里我们UI是以1920*1280分辨率做图的,并且是横屏显示:AutoUtils.setSize(th

自定义EditText实现一键删除数据

转载请注明出处http://blog.csdn.net/xiaanming/article/details/11066685 自定义EditText带删除小图标, 实现的功能: 点击删除小图标,删除当前输入框中所有内容 删除图标默认不显示,当输入框获得焦点后显示, 实现的操作: 在Edittext的DrawableRight中添加一张删除图标,作为删除功能的小图标 因为Edittext不能为图片设置点击监听事件,因此我们需要自定义Edittext在onTouchEvent方法中模拟按钮点击的操作

Android 自定义EditText输入框 带清空按钮

总结  Android 自定义EditText输入框 带清空按钮 当用户输入字符后  EditText会自动在输入框的内部右侧出现删除按钮 重写EditText达到简化布局的效果 效果图: 继承EditText package com.example.myedittexttest; import android.content.Context; import android.graphics.Rect; import android.graphics.drawable.Drawable; imp

初识EditText - 自定义EditText形状

EditText继承自TextView,是程序用于和用户进行交互的另一个重要控件,它允许用户在控件里输入和编辑内容,并可以在程序中对这些内容进行处理. 使用 android:hint属性来指定了一段提示性的文本,当我们输入任何内容时,这段文本就会自动消失. 不过随着输入的内容不断增多,EditText 会被不断地拉长.这时由于 EditText 的高度指定的是 wrap_content,因此它总能包含住里面的内容,但是当输入的内容过多时,界面就会变得非常难看.我们可以使用 android:max

iOS 为导航栏自定义按钮图案Button Image 运行出来的颜色与原本颜色不一样 -解决方案

为相机制作闪光灯,在导航栏自定义了"闪光"图案,希望点击时变换图片,但是一直没有改变,原来是因为设置了Global Tint的颜色,所以系统会自动把图片的颜色改为Global Tint的颜色. 解决方案,设置图片时,添加:imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal 源码: - (void) setFlashOn:(BOOL)isOn { if (self.captureDevice.hasFlash) { UIIm

自定义navigationItem与button的几种状态

self.navigationItem.rightBarButtonItem = [UIBarButtonItem alloc] initWithCustomView:button]; 前提要创建一个UIButton *button:button的内容(图片.颜色等)可以自定义. 这样就实现了自定义navigationItem的rightBarButtonItem或者leftBarButtonItem的自定义了. button的状态设置参考: [button setTitle:@"按钮"

Android学习笔记-EditText&TextView&Button&菜单栏

界面文件activity_main.xml <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"     xmlns:tools="http://schemas.android.com/tools"     android:layout_width="match_parent"     android:layout_height="ma

LayoutInflater作用及使用--自定义EditText,自带清除内容按钮

作用: 1.对于一个没有被载入或者想要动态载入的界面, 都需要使用inflate来载入. 2.对于一个已经载入的Activity, 就可以使用实现了这个Activiyt的的findViewById方法来获得其中的界面元素. 举例:定义了一个控件类CleanableEditText,实现在焦点变化时和输入内容发生变化时均要判断是否显示右边clean图标   后台调用自定义控件的时候需要LayoutInflater来载入(见第三段代码). 自定义控件: package com.utils; impo

Android之自定义EditText光标和下划线颜色

"-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> Android之自定义EditText光标和下划线颜色 - Lindroid的博客 - 博客频道 - CSDN.NET Lindroid的博客 不积跬步,无以至千里. 目录视图 摘要视图 订阅 [活动]2017 CSDN博客专栏评选 &nbsp [5月书讯]流畅的Py