2017-07-18 30 views
3

早安所有,如何從活動的值傳遞給另一個活動在科特林

,因爲我學習科特林Android的發展,我現在想喜歡的Hello World,以及如何基本程序導航從一個活動另一項活動,出現在這個

我關心的任何問題是,當我從一個活動移動到另一個活動它工作正常,但我不知道怎麼打發

我累了,設置活動之間的值值在一個活動中,並在其他活動中檢索到它不起作用

請參考下面

代碼片斷這是我需要的用戶名和密碼編輯文本和設置的意圖

class MainActivity : AppCompatActivity() { 
    val userName = null 
    val password = null 
    override fun onCreate(savedInstanceState: Bundle?) { 
    super.onCreate(savedInstanceState) 
    setContentView(R.layout.activity_main) 
    button.setOnClickListener { 
     val intent = Intent([email protected],SecondActivity::class.java); 
     var userName = username.textø 
     var password = password_field.text 
     intent.putExtra("Username", userName) 
     intent.putExtra("Password", password) 
     startActivity(intent); 
    } 
} 

}

我的主要活動這是我的第二個活動我必須從主要活動接收值

class SecondActivity:AppCompatActivity(){

override fun onCreate(savedInstanceState: Bundle?) { 
    super.onCreate(savedInstanceState) 
    setContentView(R.layout.activity_second) 
    var strUser: String = intent.getStringExtra("Username") 
    var strPassword: String = intent.getStringExtra("Password") 
    user_name.setText("Seelan") 
    passwor_print.setText("Seelan") 

} 

}

請指導我如何做到這一點,無論是如果我有一些其他的方式,如果做到這一點在科特林沒有意圖

預先感謝您

回答

1

我在手機,你必須自己測試。

嘗試撥打CharSequenceMainActivity一個String,你已經把一個CharSequence而非String,例如:

var userName = username.text.toString() 
var password = password_field.text.toString() 
+0

非常感謝我爲這個愚蠢的問題打了個盹 – Jeyaseelan

+0

@Jeyaseelan一點都沒有。 –

2

你可以簡單的使用意圖和包從一個活動來發送數據另一項活動。

val intent = Intent([email protected],TwoActivity::class.java); 
intent.putExtra("username", userName) 
startActivity(intent); 
3

在Kotlin中,您只需使用Intents即可傳遞數據。您可以直接放置數據,也可以將這些數據寫入捆綁包中,然後使用該意向將該捆綁包發送給其他活動。

val intent = Intent([email protected],ProfileActivity::class.java); 
intent.putExtra("profileName", "John Doe") 
var b = Bundle() 
b.putBoolean("isActive", true) 
intent.putExtras(b) 
startActivity(intent); 
相關問題