我正在尝试在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>
答案 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
的示例