一次活动如何重新打开

时间:2019-04-21 11:29:26

标签: android android-activity kotlin

我必须一次创建两个活动。一个是登录名,另一个是公司。两个活动数据均存储在共享首选项中。因此,当“更改公司”时,“公司活动”将重新打开。

我必须尝试使用​​editer.clear,然后同时显示两个活动,但我只需要打开一个公司活动。我还必须尝试使用​​editer.remove(“ Company”),然后它无法打开“公司活动”。

Company.kt

fun oneTimeCompanyScreen(){
        val preferences = getSharedPreferences(Constant.SHARED_PREF, Context.MODE_PRIVATE)
        val firsTime = preferences.getBoolean("hasCompany", false)
        if (firsTime) {
            val i = Intent(this, Dashboard::class.java)
            startActivity(i)
            finish()
        }
    }

 val pref = getApplicationContext().getSharedPreferences(Constant.SHARED_PREF, Context.MODE_PRIVATE)
        val editor = pref.edit()
        editor.putString("Company", companyName)
        editor.putString("Year", accountYear)
        editor.putInt("cid", this!!.CID!!)
        editor.putInt("fid", this!!.fYID!!)
        editor.putBoolean("hasCompany", true)
        editor.commit()
        val intent = Intent(this,Dashboard::class.java)

        startActivity(intent)

Dashboard.kt

val preferences = getApplicationContext().getSharedPreferences(Constant.SHARED_PREF, Context.MODE_PRIVATE)
    if (null != preferences) {
        val companyName = preferences.getString("Company", "")
        val accountYear = preferences.getString("Year", "")
        cid = preferences.getInt("cid", 0)
        fid = preferences.getInt("fid", 0)
    }


    fab_company.setOnClickListener {

        val preferences = getSharedPreferences(Constant.SHARED_PREF, Context.MODE_PRIVATE)
        val editor = preferences.edit()
        editor.remove("Company")
        editor.remove("Year")
        //editor.commit()
        //finish()
        val intent = Intent(this,Company::class.java)
       // intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)
        startActivity(intent)
    }

仅登录键值中的相同代码已更改。

0 个答案:

没有答案