получить текст из редактировать текст и писать в текстовом представлении - PullRequest
0 голосов
/ 08 мая 2011

У меня есть следующий код:

public class Activity2 extends Activity {
    /** Called when the activity is first created. */
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.accounted);

        TextView tv1 = (TextView) findViewById(R.id.textView1);
        EditText et1 = (EditText) findViewById(R.id.editText1);
        String text1 =  et1.getText().toString();

Когда я закомментирую строку «string text1 ...», программа работает.Но если я раскомментирую его, приложение закроется.

TextView (tv1) на текущей странице, а EditText (et1) на другой страницеМожет ли это быть причиной моей проблемы?Как мне обойти это?

Ответы [ 4 ]

2 голосов
/ 08 мая 2011

Вы не можете получить доступ к просмотру текста из другого актива, вы должны передать значение textview второму действию, используя намерения

пример, доступный на Как передать данные между действиями в приложении Android?

0 голосов
/ 26 мая 2014
 public class Activity2 extends Activity {
        /** Called when the activity is first created. */
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.accounted);

            TextView tv1 = (TextView) findViewById(R.id.textView1);
            EditText et1 = (EditText) findViewById(R.id.editText1);
            String text1 =  et1.getText().toString();

Это ваш код. У вас есть Edittext в другом действии, поэтому приложение вылетает. Если вы хотите получить текст edittext из последнего действия для установки в textview, вам нужно будет добавить следующую строку в код, где Intent is используется для изменения активности.

 Intent.putextra("string1",et1.getText().toString());
    StartActivity(Intent);

Это определенно будет работать для вас.

0 голосов
/ 09 апреля 2013

это ваш код ...................

public class Activity2 extends Activity {
/** Called when the activity is first created. */
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.accounted);

    TextView tv1 = (TextView) findViewById(R.id.textView1);
    EditText et1 = (EditText) findViewById(R.id.editText1);
    String text1 =  et1.getText().toString();

, пока у вас есть текст редактирования в другом упражнении.поэтому для получения текста в вашем текстовом представлении вы должны внести некоторые изменения, я показываю это, надеюсь, что это сработаетэто назначит этот editText текст редактирования другого действия

t1=secondactivity.edittext id;

, теперь просто получите этот текст и установите его в своем текстовом представлении

 String text1 =  et1.getText().toString();
 text1.setText(et1.getText().toString());
0 голосов
/ 08 мая 2011

Если EditText находится в другом xml, не используйте его. Добавьте EditText в ваш XML или удалите его из исходного кода.

...