[TIL] 0705 최종 수정

Anna·2024년 7월 9일

[TIL]Android

목록 보기
16/34
post-thumbnail

이미지 버튼

클릭 된 뷰의 id를 확인하고 그에 따라 intent를 생성하여 다른 액티비티로 데이터 전달

애니메이션 효과를 적용하여 화면 전환을 처리 (이지민님 담당)

private fun initImageButton(view: View) {
    when (view.getId()) {
        R.id.ib_koreanfood -> {
            val intent = Intent(this, DetailActivity::class.java)
            intent.putExtra("food", "koreanFood")
            intent.putExtra("id", user_id)
            intent.putExtra("name", user_Name)
            startActivity(intent)
            overridePendingTransition(R.anim.main_to_koreanfood, R.anim.none)
        }

        R.id.ib_chinesefood -> {
            val intent = Intent(this, DetailActivity::class.java)
            intent.putExtra("food", "chineseFood")
            intent.putExtra("id", user_id)
            intent.putExtra("name", user_Name)
            startActivity(intent)
            overridePendingTransition(R.anim.main_to_chinesefood, R.anim.none)
        }

        R.id.ib_westernfood -> {
            val intent = Intent(this, DetailActivity::class.java)
            intent.putExtra("food", "westernFood")
            intent.putExtra("id", user_id)
            intent.putExtra("name", user_Name)
            startActivity(intent)
            overridePendingTransition(R.anim.main_to_westernfood, R.anim.none)
        }

        R.id.ib_japanesefood -> {
            val intent = Intent(this, DetailActivity::class.java)
            intent.putExtra("food", "japaneseFood")
            intent.putExtra("id", user_id)
            intent.putExtra("name", user_Name)
            startActivity(intent)
            overridePendingTransition(R.anim.main_to_japanesefood, R.anim.none)
        }
    }
}

툴바

로그인 상태에 맞춰 변동

클릭 : 로그인 페이지/마이 페이지로 이동

private fun initToolBar() {
    val accountIcon = findViewById<ImageView>(R.id.iv_right_icon)
    val userName = findViewById<TextView>(R.id.tv_user_name)
    val loginBtn = findViewById<Button>(R.id.btn_login)

    user_id = intent.getStringExtra("id") ?: ""
    val user = UserManager.getUser(user_id)
    user_Name = intent.getStringExtra("name") ?: ""

    loginBtn.setOnClickListener {
        val intent = Intent(this, SignInActivity::class.java)
        startActivity(intent)
    }

    if (user != null) {
        userName.text = getString(R.string.main_sir, user_Name)
        loginBtn.visibility = View.GONE
        userName.visibility = View.VISIBLE
        accountIcon.visibility = View.VISIBLE

        if (user.profileImageUrl != "") {
            accountIcon.setImageURI(Uri.parse(user.profileImageUrl))
        } else {
            accountIcon.setImageResource(R.drawable.account_circle)
        }

    } else {
        loginBtn.visibility = View.VISIBLE
        userName.visibility = View.GONE
        accountIcon.visibility = View.GONE
    }

    //마이페이지 클릭하면 유저 아이디를 마이페이지로 전달
    accountIcon.setOnClickListener {
        val intent = Intent(this, MyPageActivity::class.java)
        intent.putExtra("id", user_id)
        startActivity(intent)

        overridePendingTransition(R.anim.main_to_mypage, R.anim.none)
    }
}

0개의 댓글