显示键入的文本

时间:2013-03-06 01:48:54

标签: android android-layout android-edittext

我正在尝试在Android应用中显示文字,但我对Android开发完全不熟悉。我非常了解Java但是,我如何在应用程序中间显示文本,就像它是一个短信应用程序一样?我在底部有一个文本字段,带有发送按钮,但在点击发送之后,我希望能够显示他们在中间键入的内容。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="horizontal">
    <EditText android:id="@+id/edit_message"
        android:layout_weight="1"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:hint="@string/edit_message" 
        android:layout_gravity="bottom" />

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:onClick="sendMessage"
        android:text="@string/button_send" 
        android:layout_gravity="bottom"/>

</LinearLayout>

3 个答案:

答案 0 :(得分:0)

添加一个新的TextView,XML如下:

<TextView
    android:id="@+id/new_text_view"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="I am some new text!" />

这将只创建一个新的TextView元素,您需要向XML添加新参数以指定其在屏幕上的位置,所有这些都取决于您使用的布局类型。

如果您要将此元素添加到Button

android:id="@+id/button"

您可以使用以下代码在按下按钮时编辑活动中的文本:

Button button = (Button)findViewById(R.id.button);
button.setOnClickListener(newView.OnClickListener(){
    public void onClick(){
        TextView newTextView = (TextView)findViewById(R.id.new_text_view);
        EditText editMessage = (EditText)findViewById(R.id.edit_message);
        newTextView.setText(editMessage.getText().toString());
    }
});

答案 1 :(得分:0)

将您的xml编辑为:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">

<TextView ndroid:id="@+id/text_message"
    android:layout_weight="1"
    android:layout_width="match_parent"
     android:layout_height="wrap_content" />
<EditText android:id="@+id/edit_message"
    android:layout_weight="1"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:hint="@string/edit_message" 
   android:layout_gravity="bottom" 
   />

<Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:onClick="sendMessage"
    android:text="@string/button_send" 
    android:layout_gravity="bottom"/>
</LinearLayout>

并在代码中写下以下内容:

 button.setOnClickListener(new View.OnClickListener() 
 {
    public void onClick(View v) 
    {
            edit_message= (TextView) findViewById(R.id.edit_message);
            String text = edit_message.getText().toString();
            text_message= (TextView) findViewById(R.id.text_message);
            text_message.setText(text );
    }
 }

答案 2 :(得分:0)

这是您想要的布局:

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

    <TextView
        android:id="@+id/textView1"
        android:layout_width="match_parent"
        android:layout_height="400dp"
        android:text="TextView" />
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal">

        <EditText
            android:id="@+id/edit_message"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:ems="10"
            android:hint="@string/edit_message" >

            <requestFocus />
        </EditText>

        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/button_send" />
    </LinearLayout>
</LinearLayout>

您不一定需要在xml中设置onClick事件。使用其他答案作为如何添加onClickListener

的示例