Как показать значения прядильщиков во втором тексте? [Дубликат]

Если мы рассмотрим общие сценарии, в которых может быть выбрано это исключение, доступ к свойствам с объектом вверху.

Пример:

string postalcode=Customer.Address.PostalCode; 
//if customer or address is null , this will through exeption

здесь, если адрес имеет значение null, то вы получите NullReferenceException.

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

string postalcode=Customer?.Address?.PostalCode;
//if customer or address is null , this will return null, without through a exception
24
задан Santosh V M 18 August 2010 в 10:30
поделиться

5 ответов

Реализуем таким образом

String i="hi";
Intent i = new Intent(this, ActivityTwo.class);
//Create the bundle
Bundle b = new Bundle();
//Add your data to bundle
b.putString(“stuff”, i);
i.putExtras(b);
startActivity(i);

Начните эту секунду activity, внутри этого class, чтобы использовать значения Bundle, используйте этот код

Bundle bundle = getIntent().getExtras();
String text= bundle.getString("stuff");
54
ответ дан svmrajesh 28 August 2018 в 22:27
поделиться

Я знаю, что это уже поздно, но если переменную нужно получить доступ и изменить по нескольким намерениям, самый простой способ - использовать singleton. Определение глобальной переменной, которая будет доступна для всех целей.

-1
ответ дан Anuj 28 August 2018 в 22:27
поделиться
  • 1
    Это ужасный совет и побеждает цель принципов ООП. – Pants 26 July 2018 в 17:28

Thats тривиально, используйте Intent.putExtra для передачи данных в действие, которое вы запускаете. Используйте затем Bundle.getExtra для его получения.

Уже есть много таких вопросов https://stackoverflow.com/search?q=How+to+pass+a+value+from+ one + Activity + to + another + in + Android обязательно используйте поиск в следующий раз.

2
ответ дан Community 28 August 2018 в 22:27
поделиться

Его простое Если вы передаете String X из A в B. A -> B

В действии A 1) Создайте намерение 2) Поместите данные в намерение с использованием метода намерения putExtra 3) Начните работу

Intent i = new Intent(A.this, B.class);
i.putExtra("MY_kEY",X);

В операции B внутри метода onCreate 1) Получить объект цели 2) Получить сохраненное значение с помощью ключа (MY_KEY)

Intent intent = getIntent();
String result = intent.getStringExtra("MY_KEY");

Это стандартный способ отправки данных из От A до B. вы можете отправить любой тип данных, это может быть int, boolean, ArrayList, String []. Основываясь на типе данных, который вы сохранили в действии как ключевом, метод получения пары значений может отличаться, как если бы вы передавали значение int, тогда вы вызовете

intent.getIntExtra("KEY");

. Вы даже можете отправить объекты класса, но для этого у вас есть чтобы ваш объект класса реализовал Serialzable или Parceable interaface.

TransactionTooLargeException

Сколько данных вы можете отправить по размеру. Если данные превышают определенную величину, вы можете получить TransactionTooLargeException. Предположим, вы пытаетесь отправить растровое изображение по всей активности, и если размер превышает определенный размер данных, вы можете увидеть это исключение.

0
ответ дан Rohit Singh 28 August 2018 в 22:27
поделиться

Стандартный способ передачи данных из одной активности в другую:

Если вы хотите отправить большое количество данных из одной активности в другую деятельность, вы можете поместить данные в пакет, а затем передать ее с помощью putExtra().

//Create the `intent`
 Intent i = new Intent(this, ActivityTwo.class);
String one="xxxxxxxxxxxxxxx";
String two="xxxxxxxxxxxxxxxxxxxxx";
//Create the bundle
Bundle bundle = new Bundle();
//Add your data to bundle
bundle.putString(“ONE”, one);
bundle.putString(“TWO”, two);  
//Add the bundle to the intent
i.putExtras(bundle);
//Fire that second activity
startActivity(i);

, в противном случае вы можете напрямую использовать putExtra() с целью отправки данных и getExtra() для получения данных.

Intent i=new Intent(this, ActivityTwo.class);
i.putExtra("One",one);
i.putExtra("Two",two);
startActivity(i);
6
ответ дан Sathish Kumar J 28 August 2018 в 22:27
поделиться
Другие вопросы по тегам:

Похожие вопросы: