Строка заголовка в Kotlin будет пустой Если я нажму кнопку «Назад» - PullRequest
0 голосов
/ 22 октября 2018

Если я щелкну по Деятельности 1--2, то смогу увидеть строку заголовка, но если я вернусь с 2-1, то значение строки заголовка будет пустым.Я попробовал метод onBackPressed, но он по-прежнему бесполезен.Я попытался использовать общие настройки и локальное хранилище файлов, но это не помогло.

    Model Class:
    class TestProject(val name: String,val location: String)

    Main Class:     
         private class ItemDetailAdapter(val TestProjectList:Array<TestProject>): RecyclerView.Adapter<ItemDetailViewHolder>()
        {

            override fun onBindViewHolder(p0: ItemDetailViewHolder, p1: Int) {
                val TestProject=TestProjectList.get(p1)
                p0?.customView?.TestProjectName?.text=TestProject.name
                val TestProjectPicture=p0?.customView?.itemPicture
                Picasso.get().load(TestProject.location).into(TestProjectPicture)
    //Below code solved the Title Problem
                    p0?.Title=TestProject
            }
            override fun getItemCount(): Int {
                return TestProjectList.size

            }
            override fun onCreateViewHolder(p0: ViewGroup, p1: Int): ItemDetailViewHolder {
                val layoutInflater=LayoutInflater.from(p0?.context)
                val customView=layoutInflater.inflate(R.layout.items_details,p0,false)
                            return ItemDetailViewHolder(customView)
            }
        }
        class ItemDetailViewHolder(val customView:View,var Title: TestProject?=null):RecyclerView.ViewHolder(customView)
        {
            companion object {
            val ITEM_TITLE_KEY="TestProject"
            }
            init {
                customView.setOnClickListener {
                    val intent= Intent(customView.context,TestProjectMenuList::class.java)
                    intent.putExtra(ITEM_TITLE_KEY,Title?.name)
                    print("Printting Title :$Title?.name")
                    println("Hello Test $ITEM_TITLE_KEY")
                    customView.context.startActivity(intent)
                    println("Test")
                }
            }

TestProjectList Class:
val navBarTitle=intent.getStringExtra(MainClass.ItemDetailViewHolder.ITEM_TITLE_KEY)
            supportActionBar?.title=navBarTitle

1 Ответ

0 голосов
/ 22 октября 2018

Если вы уверены, что

val navBarTitle=intent.getStringExtra(MainClass.ItemDetailViewHolder.ITEM_TITLE_KEY)

... имеет значение, вы можете поместить

val navBarTitle=intent.getStringExtra(MainClass.ItemDetailViewHolder.ITEM_TITLE_KEY)
supportActionBar?.title=navBarTitle

в функцию onResume.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...