【转】EditText大小(长宽)的多种设置方式----不错

原文网址:http://orgcent.com/android-edittext-ems-layout-minwidth-maxheight/

EditText大小的设置有多种方式,要想对每种方式运用自如必须熟练掌握它们。下面将对其详细描述:

1、layout_width和layout_height
layout_width告诉父容器EditText需要的宽度,layout_height则设置需要的高度。单位建议为dp,关于Android中单位转换问题可以参考Android根据分辨率进行单位转换-(dp,sp转像素px)

2、minWidth/maxHeight和minHeight/maxHeight
这些属性用来动态的限制EditText的大小,应用场景有如下几种情况:
1)在没有内容情况下,通过min系列保证控件的最小宽高,保持界面整体美观。
2)在内容过多情况下,使用max系列来限制控件大小,确保不影响界面上的其他控件。
PS:还可以使用minLines和maxLines来限制内容显示的行数。

3、ems、minEms和maxEms
ems指的是字体的宽度。此属性在Android中用来设置EditText的宽度,即设置EditText为n个字符的宽度。
PS:android:layout_width必须为wrap_content,否则ems将无效。

参考代码:

<EditText 
       android:id="@+id/etTest" 
       android:layout_width="wrap_content"
       android:layout_height="wrap_content" android:ems="4"/>

原文网址:http://www.jb51.net/article/32794.htm

Android取消EditText自动获取焦点默认行为

在项目中,一进入一个页面, EditText默认就会自动获取焦点,很是郁闷,Android 如何让EditText不自动获取焦点?于是搜集整理一番,晒出来和大家分享,希望对你们有所帮助

那么如何取消这个默认行为呢? 
在网上找了好久,有点 监听软键盘事件,有点 调用 clearFouse()方法,但是测试了都没有! xml中也找不到相应的属性可以关闭这个默认行为 
解决之道:在EditText的父级控件中找一个,设置成

代码如下:

android:focusable="true" 
android:focusableInTouchMode="true"

这样,就把EditText默认的行为截断了!

<LinearLayout 
style="@style/FillWrapWidgetStyle" 
android:orientation="vertical" 
android:background="@color/black" 
android:gravity="center_horizontal" 
android:focusable="true" 
android:focusableInTouchMode="true" 

<ImageView 
android:id="@+id/logo" 
style="@style/WrapContentWidgetStyle" 
android:background="@drawable/dream_dictionary_logo" 
/> 
<RelativeLayout 
style="@style/FillWrapWidgetStyle" 
android:background="@drawable/searchbar_bg" 
android:gravity="center_vertical" 

<EditText 
android:id="@+id/searchEditText" 
style="@style/WrapContentWidgetStyle" 
android:background="@null" 
android:hint="Search" 
android:layout_marginLeft="40dp" 
android:singleLine="true" 
/> 
</RelativeLayout> 
</LinearLayout>

时间: 2024-10-12 03:14:30

【转】EditText大小(长宽)的多种设置方式----不错的相关文章

POI插入图片至Excel使用固定的长宽

使用POI在Excel里插入图片,如何使插入的图片使用固定的大小?先介绍原有的两种方式: 一种是指定开始和结尾单元格,然后从头画到尾,相当于平铺 还有一种就是仅指定开始的单元格,图片的大小跟这个单元格的长宽有关,可以放大缩小固定的倍数,相当于左对齐 第一种效果如下: 第二种效果如下: 第一种方法的关键代码如下: 1 private void pictureToSheet(Sheet finalSheet, Row row, Cell cell, int pictureIdx) { 2 Drawi

android 代码控制控件的长宽,小技巧

要在代码里改变ImageView 的长宽,如图 通过拿到contentImage这对象的控件参数,再去改变,再设置 , 上图的contentImage为ImageView对象: 而这里 要提醒的是,LayoutParams 这个类,需要导入正确的包,设置才会起作用 这里就需要看清你的 imageView是属于哪个布局控件下(LieanerLayouy 还是R---layout);

js读取屏幕长宽

网页可见区域宽 document.body.clientWidth 网页可见区域高 document.body.clientHeight 网页可见区域宽(包括边线的宽) document.body.offsetWidth 网页可见区域高(包括边线的宽) document.body.offsetHeight 网页正文全文宽 document.body.scrollWidth 网页正文全文高 document.body.scrollHeight 网页被卷去的高 document.body.scrol

Android必知必会-获取View坐标和长宽的时机

如果移动端访问不佳,请访问–>Github版 背景 最近要实现一个功能,用到了一些属性动画,需要获取一些View的坐标信息,设计图如下: 这里我使用的是DialogFragment来实现的,可以复用. 先贴一下获取View坐标的一些资料: Android View各种尺寸位置相关的方法探究 Android获得控件在屏幕中的绝对坐标 合适的时机 要想获得View的坐标和长宽,必须要等到View绘制完毕,在平常写代码的生命周期函数内一般是获取不到的: //Activity onCreate(); o

获取当前页面的长宽

今天遇到一个问题,当我获取页面长宽的时候采用的document.body.clientHeight返回0,很奇怪,就查了一下 document.body.clientHeight是指body的高度,因为我的body没内容,因此为0,若想获取高度采用document.documentElement.clientHeight 然后看了一下的高度问题 网页可见区域宽: document.body.clientWidth; 网页可见区域高: document.body.clientHeight; 网页可

quick cocos2d-x 精灵大小(宽高)获取

quick下sprite的大小获取,记录一下: local w = sprite:getContentSize().width local h = sprite:getContentSize().height 今天连这个最基本的,都不知道怎么获取.挺实用的代码额~ quick cocos2d-x 精灵大小(宽高)获取,布布扣,bubuko.com

Android中获取屏幕长宽的方法

package com.kale.screen; import android.annotation.SuppressLint; import android.app.Activity; import android.graphics.Point; import android.os.Bundle; import android.util.Log; import android.view.Display; public class MainActivity extends Activity {

四个长宽已知的长方形能否拼成大长方形

简化问题 : 四个长方形长宽都已知, 四个面积 S1, S2, S3, S4 已知, 总面积 S = S1 + S2 + S3 + S4 已知 于是枚举长边为length, 宽为width = S / length, 问题转化为, 这四个长方形能否塞进 length * width 的长方形中? 规定小长方形的 l > w, 大长方形的 length > width 1. 如果问一个长宽已知的长方形, 问能否正好(不留空)放入length * width的长方形中, 只要长边 == lengt

asp.net在配置文件里设置多种编码方式的研究

我们在做asp.net的程序时,在根目录下肯定会有一个web.config的文件, 有点开发经验的可能都知道,它是配置程序的全局信息的地方, 当然了,也可以在这里做更多的事情,下面我们来研究一下 ,如何在一个配置文件里设置多种编码方式, 在项目第一次生成时,项目都会生成一个 web.config文件, web.config文件是一个xml文件,刚生成的web.config文件里,有这样一个节点: <system.web> 您可以在这个节点下设置<globalization request