Android - Edittext中WrapText的问题

发布于 2024-10-11 13:38:23 字数 1347 浏览 0 评论 0原文

我在 EditText 中设置 WrapText 类型的工具时遇到麻烦。

问题:当我尝试在 EditText 中输入数据时,它超出了屏幕宽度(水平滚动)。相反,它应该出现在下一行。

想要执行:实际上,我想实现多行edittext,最初它应该像往常一样以单行显示,但是当输入数据时它会垂直(而不是水平)扩展。

请建议我该怎么办?

请看看下面的图片:

alt text

我已经完成了以下 XML 编码:

<TableLayout 
    android:layout_width="fill_parent"  
    android:layout_height="fill_parent"
    android:paddingTop="10dp"
    android:paddingLeft="10dp"
    android:paddingRight="10dp"
    android:stretchColumns="1">

    <TableRow android:id="@+id/TableRow02" android:layout_width="fill_parent" android:layout_height="wrap_content">
        <TextView 
            android:text="Name:" 
            android:id="@+id/TextView01" 
            android:layout_width="80dp" 
            android:layout_height="wrap_content"
            android:textSize="16dip">
        </TextView>
        <EditText 
            android:id="@+id/txtViewName" 
            android:layout_height="wrap_content" 
            android:layout_width="wrap_content"
            android:inputType="textFilter|textMultiLine|textNoSuggestions"
            android:scrollHorizontally="false">
        </EditText>
    </TableRow>
</TableLayout>

I am facing trouble to set WrapText kind of facility in EditText.

Problem: When i try tp enter data in EditText, it goes beyond the screen width (scrolling horizontally). Instead of it should be appear in next-line.

Want to perform: Actually, i want to implement multiline edittext, initially it should display with single-line as usual, but it will be expanded vertically(not horizontally) as when data is being entered.

Please suggest me what should i do ??

Please have a look at below image:

alt text

I have done the below XML coding:

<TableLayout 
    android:layout_width="fill_parent"  
    android:layout_height="fill_parent"
    android:paddingTop="10dp"
    android:paddingLeft="10dp"
    android:paddingRight="10dp"
    android:stretchColumns="1">

    <TableRow android:id="@+id/TableRow02" android:layout_width="fill_parent" android:layout_height="wrap_content">
        <TextView 
            android:text="Name:" 
            android:id="@+id/TextView01" 
            android:layout_width="80dp" 
            android:layout_height="wrap_content"
            android:textSize="16dip">
        </TextView>
        <EditText 
            android:id="@+id/txtViewName" 
            android:layout_height="wrap_content" 
            android:layout_width="wrap_content"
            android:inputType="textFilter|textMultiLine|textNoSuggestions"
            android:scrollHorizontally="false">
        </EditText>
    </TableRow>
</TableLayout>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

匿名的好友 2024-10-18 13:38:23

您可以尝试将 width 更改为 fill_parent。

You can try to change the width to fill_parent.

我恋#小黄人 2024-10-18 13:38:23

如果您想将其换行,请尝试在编辑文本中添加以下代码:


安卓:singleLine =“真”

或者,如果您想要多行,请将编辑文本的宽度设置为 fill_parent 或 dial 中的任何值。

try adding following code in your edit text if you want to wrap it in a single line:


android:singleLine="true"

OR set the width of your edittext to fill_parent or any value in dip if you want multiline.

荒路情人 2024-10-18 13:38:23

我只是改变这个: android:layout_width ="0dip" 它工作正常。

多行编辑文本,但最初它显示一行,随着输入越来越多的数据,它将垂直(而不是水平)扩展。

I just change this: android:layout_width ="0dip" and it is working fine.

Multiline edittext but initially it is being displayed one line, it will be expanded vertically(not horizontally) as and when the more and more data are being entered.

鸢与 2024-10-18 13:38:23

只需使用 android:stretchColumns="1"android:shrinkColumns="1" 而不是唯一的一个 android:stretchColumns="1"

<TableLayout 
    android:layout_width="fill_parent"  
    android:layout_height="fill_parent"
    android:paddingTop="10dp"
    android:paddingLeft="10dp"
    android:paddingRight="10dp"
    android:stretchColumns="1"
    android:shrinkColumns="1">

Just use both android:stretchColumns="1" and android:shrinkColumns="1" instead the only one android:stretchColumns="1":

<TableLayout 
    android:layout_width="fill_parent"  
    android:layout_height="fill_parent"
    android:paddingTop="10dp"
    android:paddingLeft="10dp"
    android:paddingRight="10dp"
    android:stretchColumns="1"
    android:shrinkColumns="1">
梦屿孤独相伴 2024-10-18 13:38:23

我已经在 2.1 模拟器上测试了它,并将代码(编辑文本中包含 fill_parent)包含在这个相对布局中,看起来没问题。

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
<TableLayout
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:paddingTop="10dp"
    android:paddingLeft="10dp"
    android:paddingRight="10dp"
    android:stretchColumns="1">

    <TableRow android:id="@+id/TableRow02" android:layout_width="fill_parent" android:layout_height="wrap_content">
        <TextView
            android:text="Name:"
            android:id="@+id/TextView01"
            android:layout_width="80dp"
            android:layout_height="wrap_content"
            android:textSize="16dip">
        </TextView>
        <EditText
            android:id="@+id/txtViewName"
            android:layout_height="wrap_content"
            android:layout_width="fill_parent"
            android:inputType="textFilter"
            android:scrollHorizontally="false">
        </EditText>
    </TableRow>
</TableLayout>
</RelativeLayout>

也许您可以在 Eclipse 大纲窗口中导航 xml 树,看看哪个视图比屏幕大。

I've tested it on a 2.1 emulator enclosing the code (with fill_parent in the edit text) inside this relative layout and appears to be ok.

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
<TableLayout
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:paddingTop="10dp"
    android:paddingLeft="10dp"
    android:paddingRight="10dp"
    android:stretchColumns="1">

    <TableRow android:id="@+id/TableRow02" android:layout_width="fill_parent" android:layout_height="wrap_content">
        <TextView
            android:text="Name:"
            android:id="@+id/TextView01"
            android:layout_width="80dp"
            android:layout_height="wrap_content"
            android:textSize="16dip">
        </TextView>
        <EditText
            android:id="@+id/txtViewName"
            android:layout_height="wrap_content"
            android:layout_width="fill_parent"
            android:inputType="textFilter"
            android:scrollHorizontally="false">
        </EditText>
    </TableRow>
</TableLayout>
</RelativeLayout>

Maybe you can navigate the xml tree in the eclipse outline window and see what view is bigger than the screen.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文