Намеренное выбрасывание нулевого значения в MainActivity из MainActivity2 - PullRequest
0 голосов
/ 20 сентября 2018

Основная деятельность 2 и Основной код деятельности.Если я передаю переменную в MainActivity из MainActivity2, то я получаю нулевую ошибку в Kotlin.

Основной код активности 2

class MainActivity2:AppCompatActivity()  {
    override fun onCreate(savedInstanceState: Bundle?)
    {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
        GetJsonWithOkHttpClient(this.text).execute();
        val test=GetJsonWithOkHttpClient(this.text).execute().get()
        System.out.println("ABC Value is $test")
        val intent = Intent(this@MainActivity2,MainActivity::class.java)
        intent.putExtra("Test",test)
        var jsonStringArray=intent.getStringExtra("Test")
        startActivity(intent)
        System.out.println("TestValue: $jsonStringArray")
    }

Основной код активности

class MainActivity : AppCompatActivity(){
        var jsonStringArray=intent.getStringExtra("Test")
    }

Ответы [ 2 ]

0 голосов
/ 20 сентября 2018

Благодаря Sasikumar, я могу решить эту проблему, используя приведенный ниже код.Спасибо за вашу помощь.val test = MainActivity2.GetJsonWithOkHttpClient (this.text) .execute (). get ().Я изменил свой текстовый идентификатор между Основным действием и Основным действием 2.

0 голосов
/ 20 сентября 2018

удалить

var jsonStringArray=intent.getStringExtra("Test")

из MainActivity2

 class MainActivity2: AppCompatActivity() {
     override fun onCreate(savedInstanceState: Bundle ? ) {
         super.onCreate(savedInstanceState)
         setContentView(R.layout.activity_main)
         GetJsonWithOkHttpClient(this.text).execute();
         val test = GetJsonWithOkHttpClient(this.text).execute().get()
         System.out.println("ABC Value is $test")
         val intent = Intent(this @MainActivity2, MainActivity::class.java)
         intent.putExtra("Test", test)
         startActivity(intent)
         System.out.println("TestValue: $jsonStringArray")
     }

или

ваша основная активность должна быть

class MainActivity : AppCompatActivity() { 
override fun onCreate(savedInstanceState: Bundle ? ) {
     super.onCreate(savedInstanceState)
val test="your value"
val intent = Intent(this@MainActivity,MainActivity2::class.java) 
intent.putExtra("Test",test) 
}
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...