TextView具有单个可编辑的行

时间:2016-03-02 07:06:11

标签: android user-interface android-edittext textview

我想在Android控件中进行文本来回交互。我的想法是这样的:

  

这是程序输出的一些文本。

     

你叫什么名字? |

光标位于|(请注意,编辑不会从最后一行的开头开始)。然后用户可以自由输入文本(使用任何Android输入法,键盘等)但是目前为止不允许更改任何输出。理想情况下,用户的输入风格不同。

然后,一旦输入换行符,我希望通知程序并编辑停止:

  

这是程序输出的一些文本。

     

你叫什么名字? Foo Bar

     

你好,Foo Bar!

请注意,这需要是一个合适的控件,即我可以使用其他控件进行组合,使其成为应用程序主要布局的一部分。

4 个答案:

答案 0 :(得分:2)

TextViewEditText放在一起,然后问题就解决了,并在EditText中添加以下代码行。

android:singleLine= 'true';

只允许将一行输入EditText。让我知道这是否是你所期待的。

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

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textAppearance="?android:attr/textAppearanceLarge"
    android:text="What is your Name?"
    android:id="@+id/textView"
    android:layout_alignParentTop="true"
    android:layout_alignParentStart="true" />

<EditText
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:singleLine="true"
    android:id="@+id/editText"
    android:layout_alignParentTop="true"
    android:layout_toEndOf="@+id/textView" />
</RelativeLayout>

答案 1 :(得分:2)

  
    

这是程序输出的一些文本。

         

你叫什么名字? |

  
     

将光标置于| (请注意,编辑不会从头开始   最后一行)。然后用户可以自由输入文本(使用任何内容)   Android输入法,键盘等)但不允许更改任何内容   到目前为止的输出。理想情况下,用户的输入将被设置样式   不同。

我强烈建议重新考虑一下你的设计,因为在LinearLayout,Editext,TextView的帮助下,可以用非常简单和易于管理的方式完成同样的事情。

答案 2 :(得分:1)

我建议你创建一个新的LinearLayout(TextView + EditText)并指定EditText和edittext的背景布局背景。 完成editText后,您可以在底部显示一个新的TextView

答案 3 :(得分:1)

您需要在顶部ListView显示您的对话&amp;然后在它下面需要一个水平视图,其中TextView(显示问题)和EditText(背景透明 - 要求用户填写答案)。