Как передать текст с EditText в TextView ?

Ответить
Chvalov
Сообщения: 24
Зарегистрирован: 28 мар 2014, 16:57

Как передать текст с EditText в TextView ?

Сообщение Chvalov » 31 мар 2014, 16:59

Здравствуйте, вот мой активити:

Код: Выделить всё

package ru.chvalov.ovisapp;

import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

public class MainActivity extends Activity {

	EditText EdtMyName;
	EditText EdtMyLastName;
	EditText EdtMyEmail;
	EditText EdtMyPhoneNumber;
	Button BtnAddText;
	Button BtnClsText;
	Button BtnSendText;
	TextView OutText;
	private OnClickListener oclBtn;
	
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        EdtMyName = (EditText) findViewById(R.id.EdtMyName);
        EdtMyLastName = (EditText) findViewById(R.id.EdtMyLastName);
        EdtMyEmail = (EditText) findViewById(R.id.EdtMyEmail);
        EdtMyPhoneNumber = (EditText) findViewById(R.id.EdtMyPhoneNumber);
        BtnAddText  = (Button) findViewById(R.id.BtnAddText);
        BtnClsText = (Button) findViewById(R.id.BtnClsText);
        BtnSendText = (Button) findViewById(R.id.BtnSendText);
        OutText = (TextView) findViewById(R.id.OutText);
        
        oclBtn = new OnClickListener() {
        	@Override
        	public void onClick(View v) {
        		switch (v.getId()) {
        		case R.id.BtnAddText:
        			EdtMyName.setText("Андрей");
        			EdtMyLastName.setText("Чвалов");
        			EdtMyEmail.setText("andrej.chvalov@gmail.com");
        			EdtMyPhoneNumber.setText("380636076329");
        		break;
        		
        		case R.id.BtnClsText:
        			EdtMyName.setText("");
        			EdtMyLastName.setText("");
        			EdtMyEmail.setText("");
        			EdtMyPhoneNumber.setText("");
        		break;
        		
        		case R.id.BtnSendText:
        			OutText.setText(EdtMyName + " " + EdtMyLastName + " " + EdtMyEmail + " " + EdtMyPhoneNumber);
        		break;
        		}
        	}
        	
        };
        
    
    
    BtnAddText.setOnClickListener(oclBtn);
    BtnClsText.setOnClickListener(oclBtn);
    BtnSendText.setOnClickListener(oclBtn);
    }
    
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }
    
}
А вот мой майн.хмл

Код: Выделить всё

<RelativeLayout 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:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >

    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:text="@string/InfoText"
        android:textSize="25sp"
        android:textStyle="bold" />

    <EditText
        android:id="@+id/EdtMyName"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_below="@+id/textView1"
        android:ems="10"
        android:hint="@string/MyName"
        android:inputType="textPersonName" >

        <requestFocus />
    </EditText>

    <EditText
        android:id="@+id/EdtMyLastName"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/EdtMyName"
        android:layout_below="@+id/EdtMyName"
        android:ems="10"
        android:hint="@string/MyLastName"
        android:inputType="textPersonName" />

    <EditText
        android:id="@+id/EdtMyEmail"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/EdtMyLastName"
        android:layout_below="@+id/EdtMyLastName"
        android:ems="10"
        android:hint="@string/MyEmail"
        android:inputType="textEmailAddress" />

    <EditText
        android:id="@+id/EdtMyPhoneNumber"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/EdtMyEmail"
        android:layout_below="@+id/EdtMyEmail"
        android:ems="10"
        android:hint="@string/MyPhoneNumber"
        android:inputType="phone" />

    <LinearLayout
        android:id="@+id/linearLayout1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/EdtMyPhoneNumber"
        android:layout_below="@+id/EdtMyPhoneNumber" >

        <Button
            android:id="@+id/BtnAddText"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="@string/ButtonAddText" />

        <Button
            android:id="@+id/BtnClsText"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="@string/ButtonClsText" />

        <Button
            android:id="@+id/BtnSendText"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="6"
            android:text="@string/ButtonSendText" />
    </LinearLayout>

    <TextView
        android:id="@+id/OutText"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/linearLayout1"
        android:layout_centerVertical="true"
        android:lines="4" />

</RelativeLayout>
Вопрос как мне с EdtMyName, EdtMyLastName, EdtMyEmail, EdtMyPhoneNumber передать напечатанный текст в OutText ????
и еще как сделать так чтобы после каждой строки был перенос на следующую ??
в жабе так \n, а тут что то так не пашет (((

siberprogs
Сообщения: 93
Зарегистрирован: 05 мар 2014, 06:20

Re: Как передать текст с EditText в TextView ?

Сообщение siberprogs » 31 мар 2014, 18:04

getText не работает? http://developer.android.com/intl/ru/re ... Text%28%29
"\n" - в кавычках как текст.
Linux Fedora RFRemix + Intellij Idea

Chvalov
Сообщения: 24
Зарегистрирован: 28 мар 2014, 16:57

Re: Как передать текст с EditText в TextView ?

Сообщение Chvalov » 31 мар 2014, 19:00

Да, но как бить в моем случаее с тем что getText(), который возвращает текст с полей ввода имеет специальный тип Editable, а не String.

Если можете напишите кусочек кода как в моем случае сменить тип и вивести с переносом на новою строчку, потому что в данный момент не на роботе, а на своем компе не то чтобы эмулятор запустился, здесь сам еклипс более 3 мин грузится, после чего гдето 3-5мин еще проекты подгружает (((

siberprogs
Сообщения: 93
Зарегистрирован: 05 мар 2014, 06:20

Re: Как передать текст с EditText в TextView ?

Сообщение siberprogs » 31 мар 2014, 19:26

Типа того:
[syntax=java]
//получаем переменную String из EditText

String mytext1 = EdtMyName.getText().toString();
...
...


//выводим в TextView с переносами
OutText.setText(mytext1 + "\n" + mytext2 + "\n" + mytext3 + "\n" + mytext4);

[/syntax]
Linux Fedora RFRemix + Intellij Idea

Chvalov
Сообщения: 24
Зарегистрирован: 28 мар 2014, 16:57

Re: Как передать текст с EditText в TextView ?

Сообщение Chvalov » 31 мар 2014, 22:04

siberprogs писал(а):Типа того:
[syntax=java]
//получаем переменную String из EditText

String mytext1 = EdtMyName.getText().toString();
...
...


//выводим в TextView с переносами
OutText.setText(mytext1 + "\n" + mytext2 + "\n" + mytext3 + "\n" + mytext4);

[/syntax]
EdtMyName - это понятно
А mytext1 - это уже будкт именно эта строка в стринг ???

Или можно так: String EdtMyName = EdtMyName.getText().toString(); ???
И еще можно ли эти все EdtMyName, EdtMyLastName, EdtMyEmail, EdtMyPhoneNumber перечислить в одной строке но так чтобы потом можно было вивести текст с переносом строк ?

Или чтобы все данные с полей переобразовало в тип стринг ????
Или можго как то сразу в хмл указать полям (EditText) тип стринг

siberprogs
Сообщения: 93
Зарегистрирован: 05 мар 2014, 06:20

Re: Как передать текст с EditText в TextView ?

Сообщение siberprogs » 31 мар 2014, 23:12

[syntax=java]
//получаем переменную String из EditText

String mytext1 = EdtMyName.getText().toString();
//Обьявляем переменную mytext1 типа String
//И передаем ей текст из EditText
//mytext1 - имя переменной может быть любое
//По такому же принципу из остальных текстовых полей
//передаем текст соответственно в mytext2, mytext3 и т.д.
...


//выводим в TextView с переносами ("\n" - перенос строки)
OutText.setText(mytext1 + "\n" + mytext2 + "\n" + mytext3 + "\n" + mytext4);


[/syntax]
Так понятнее?
Chvalov писал(а):Или можно так: String EdtMyName = EdtMyName.getText().toString(); ???
Ты хочешь напрямую из EditText в TextView? без переменной?

p.s.
BtnAddText.setOnClickListener(oclBtn);
BtnClsText.setOnClickListener(oclBtn);
BtnSendText.setOnClickListener(oclBtn);
Эти строчки должны быть перед методом OnClick
Linux Fedora RFRemix + Intellij Idea

Chvalov
Сообщения: 24
Зарегистрирован: 28 мар 2014, 16:57

Re: Как передать текст с EditText в TextView ?

Сообщение Chvalov » 01 апр 2014, 08:39

Эти я эти строчки поставлю перед методом OnClick кнопки не будут работать

BtnAddText.setOnClickListener(oclBtn);
BtnClsText.setOnClickListener(oclBtn);
BtnSendText.setOnClickListener(oclBtn);

siberprogs
Сообщения: 93
Зарегистрирован: 05 мар 2014, 06:20

Re: Как передать текст с EditText в TextView ?

Сообщение siberprogs » 01 апр 2014, 09:42

Chvalov писал(а):Эти я эти строчки поставлю перед методом OnClick кнопки не будут работать
А сейчас работают?
Linux Fedora RFRemix + Intellij Idea

Chvalov
Сообщения: 24
Зарегистрирован: 28 мар 2014, 16:57

Re: Как передать текст с EditText в TextView ?

Сообщение Chvalov » 01 апр 2014, 23:07

Работают на ура, но если перенести так как вы говорили то при нажатии ничего не происходит

Между прочем в видео уроках также у него с низу эти обработчики, а уже в следующих уроках они там росположены где вы и говорили, но там какойто другой метод, если не подводит память что то там Активити

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Как передать текст с EditText в TextView ?

Сообщение Foenix » 02 апр 2014, 12:32

жую попкорн уже несколько дней, все думаю - когда ж передадите уже?
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

siberprogs
Сообщения: 93
Зарегистрирован: 05 мар 2014, 06:20

Re: Как передать текст с EditText в TextView ?

Сообщение siberprogs » 02 апр 2014, 13:56

Foenix писал(а):жую попкорн уже несколько дней, все думаю - когда ж передадите уже?
А обьяснить человеку, что не так, за несколько дней времени не нашлось?
А давайте форум переделаем так чтобы при заходе в любую ветку сразу выкидывало в гугл.
Тогда в форуме не будет ни глупых вопросов, ни глупых ответов.
Linux Fedora RFRemix + Intellij Idea

AliMan
Сообщения: 34
Зарегистрирован: 18 мар 2014, 19:11

Re: Как передать текст с EditText в TextView ?

Сообщение AliMan » 02 апр 2014, 14:16

siberprogs писал(а): А объяснить человеку, что не так, за несколько дней времени не нашлось?
Зачем? ты и так все достаточно объяснил. А если человеку все "разжевать и в рот еще положить", то думать его это не научит. Потом, при возникновения еще какой-то ошибки, он вместо того, что бы самому в примитивных вещах разобраться опять полезет на форум задавать глупые вопросы. Автору топика совершенно нет дела до того как это все работает! ибо автор, видимо, считает что не зная основ Java лезть в android - это хорошая идея.

P.S. а get'теры и set'теры - это именно примитивные вещи.

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Как передать текст с EditText в TextView ?

Сообщение Foenix » 02 апр 2014, 14:20

siberprogs писал(а):
Foenix писал(а):жую попкорн уже несколько дней, все думаю - когда ж передадите уже?
А обьяснить человеку, что не так, за несколько дней времени не нашлось?
А давайте форум переделаем так чтобы при заходе в любую ветку сразу выкидывало в гугл.
Тогда в форуме не будет ни глупых вопросов, ни глупых ответов.
да нечего на меня так нападать с требованием преодставить мое время
на меня это не действует

вы не поняли, уважаемый. Я бы помогла,только суть была не в том. Я все ждала, когда автор топика внятно объяснит чего хочет. Три раза перечитав первое сообщение поняла, что у меня так мозги не заворачиваются, чтоб понять - что это он хочет?
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Ответить