首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Android编辑文本对齐方式

Android编辑文本对齐方式
EN

Stack Overflow用户
提问于 2012-02-22 00:58:45
回答 2查看 71.1K关注 0票数 23

我正在为平板电脑做一个小应用程序,有点像一个显示标志。

我有一些在显示标志中居中对齐的文本元素。当我点击它时,它就会转换成editText。我希望在编辑文本的方式,其中的文本是居中对齐和内容包装。但当我输入内容时,editText会双向扩展,保持文本居中对齐。我想对右对齐的文本元素做同样的事情(唯一的区别是编辑文本只会向左展开)。

当我现在尝试这样做时,它会向left.This扩展,这是我用于布局编辑文本元素的代码

代码语言:javascript
复制
tempView=new EditText(this);
((EditText) tempView).setTextSize(shrinkedFontSize);
((EditText) tempView).setTypeface(tf);
((EditText) tempView).setText(tempInput.getText());     
((EditText) tempView).setGravity(Gravity.CENTER);
layout.addView(tempView, tempParams);

我在布局参数中将布局的宽度设置为Wrap_content。我还在布局参数中为编辑文本的左上角指定了x和y。

有什么方法可以做到这一点吗?

EN

回答 2

Stack Overflow用户

发布于 2012-02-29 15:42:48

这应该可以解决您的问题:

代码语言:javascript
复制
EditText t = (EditText) findViewById(R.id.text);
t.setGravity(Gravity.CENTER);

..。在XML中:

代码语言:javascript
复制
<EditText
    android:id="@+id/text"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:inputType="text" />

它使EditText inputField输入的文本水平居中。

您可以将layout_widthfill_parent更改为150 dp或任何其他大小,但不能更改wrap_content。文本将水平居中。

设置使输入的文本左对齐或右对齐的t.setGravity(Gravity.RIGHT);LEFT

票数 46
EN

Stack Overflow用户

发布于 2016-06-01 20:14:54

这是一个经过测试的更简单的解决方案。只需在布局XML文件中添加android:gravity="center",即可将文本与EditText的中心对齐。不需要更改Java代码。

代码语言:javascript
复制
<EditText
    android:id="@+id/LastName"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:background="@drawable/back"
    android:inputType="numberDecimal"
    android:gravity="center" />
票数 18
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9381715

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档