zoukankan      html  css  js  c++  java
  • [Android学习笔记]EditText的使用

    EditText就是我们最常用的文本输入框

    常用属性见官方文档

    主要是以下几个问题:

    1.取消默认获取焦点

    Activity启动时候会把焦点默认停留在第一个EditText控件上

    一般的解决方法是在此EditeText之前加入一个看不到的控件,让其先于EditText获取焦点

    加入一个看不到LinearLayout控件

            <LinearLayout
            android:focusable="true" 
            android:focusableInTouchMode="true"
            android:layout_width="0px" 
            android:layout_height="0px"/>
    LinearLayout

    2.修改EditeText样式

    一般步骤为:

    a).res/drawable文件夹下建立editeText需要的外观样式

    b).定义selector,引用样式

    默认样式bg_edittext_normal.xml

    <?xml version="1.0" encoding="UTF-8"?>   
    <shape xmlns:android="http://schemas.android.com/apk/res/android">   
        <solid android:color="#FFFFFF" />   
        <corners android:radius="3dip"/>  
        <stroke    
            android:width="1dip"    
            android:color="#cccccc" />   
    </shape>
    bg_edittext_normal.xml

    获取焦点的样式bg_edittext_focused.xml

    <?xml version="1.0" encoding="UTF-8"?>   
    <shape xmlns:android="http://schemas.android.com/apk/res/android">   
        <solid android:color="#FFFFFF" />   
        <corners android:radius="3dip"/>  
        <stroke    
            android:width="1dip"    
            android:color="#728ea3" />   
    </shape>
    bg_edittext_focused.xml

    selector: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" android:drawable="@drawable/bg_edittext_normal" />  
            <item android:state_focused="true" android:drawable="@drawable/bg_edittext_focused" />  
    </selector>
    bg_edittext.xml

    使用selector:

            <EditText
                android:id="@+id/editTextContent"
                android:layout_width="350dp"
                android:layout_height="match_parent"
                android:background="@drawable/bg_edittext"
                android:text="123" />
    使用EditText
    人生就是一局不能Again的DOTA
  • 相关阅读:
    C#_简单实用的翻页
    C#注意事项及错误处理
    C# 委托和Lambda---基础
    C#_数据转换 实用方法
    C#图片处理---基础
    C#_使用SMTP发送邮件
    C#_生成HTML
    C#操作XML文档---基础
    百度地图 使用两条平行线表示路线
    Gradle version 2.10 is required. Current version is 2.8.
  • 原文地址:https://www.cnblogs.com/hellenism/p/3655558.html
Copyright © 2011-2022 走看看