для моего приложения я пытаюсь создать приложение календаря / счетчика, в котором для каждой даты я могу установить количество баллов за этот день, но, похоже, существует проблема, из-за которой число из счетчика из другого действия непоказать в основной деятельности. Вот код
Основная активность:
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
var intent = intent
val mainactivitypoints = intent.getStringExtra("count")
val textView = findViewById<TextView>(R.id.textView)
val datePicker = findViewById<DatePicker>(R.id.datePicker)
val today = Calendar.getInstance()
datePicker.init(
today.get(Calendar.YEAR), today.get(Calendar.MONTH), today.get(Calendar.DAY_OF_MONTH)
) { _, year, monthOfYear, dayOfMonth ->
val month = monthOfYear + 1
val msg = "Selected Date is $month/$dayOfMonth/$year"
if (textView != null) {
textView.text = msg
}
counting_screen.setOnClickListener {
startActivity(Intent(this, points_screen::class.java))
val msg = textView.text.toString()
val intent = Intent(this@MainActivity, points_screen::class.java)
intent.putExtra("txtView", msg)
startActivity(intent)
}
}
}
}
points_screen:
var id = 0
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.points_screen)
val points_counter = findViewById<TextView>(R.id.points_counter)
val txtView = intent.getStringExtra("txtView")
val dateshow = findViewById<TextView>(R.id.dateshow)
dateshow.text = txtView
points_counter.setText("" + id)
val number = points_counter.text.toString()
backbtn.setOnClickListener {
startActivity(Intent(this, MainActivity::class.java))
val intent = Intent(this@points_screen, MainActivity::class.java)
intent.putExtra("count", number)
startActivity(intent)
}
Merit.setOnClickListener {
points_counter.setText("" + ++id)
}
demerit.setOnClickListener {
points_counter.setText("" + --id)
}
}
}