override fun onViewCreated()

in automotive/src/main/java/com/example/android/uamp/automotive/PinCodeSignInFragment.kt [39:78]


    override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
        super.onViewCreated(view, savedInstanceState)
        val context = requireContext()

        val binding = PinSignInBinding.bind(view)

        binding.toolbar.setNavigationOnClickListener {
            requireActivity().supportFragmentManager.popBackStack()
        }

        binding.appIcon.setImageDrawable(ContextCompat.getDrawable(context, R.drawable.aural_logo))
        binding.primaryMessage.text = getString(R.string.pin_sign_in_primary_text)
        binding.secondaryMessage.text = getString(R.string.pin_sign_in_secondary_text)

        // Links in footer text should be clickable.
        binding.footer.text = HtmlCompat.fromHtml(
            context.getString(R.string.sign_in_footer),
            HtmlCompat.FROM_HTML_MODE_LEGACY
        )
        binding.footer.movementMethod = LinkMovementMethod.getInstance()

        val pin = ViewModelProvider(requireActivity())
            .get(SignInActivityViewModel::class.java)
            .generatePin()

        // Remove existing PIN characters.
        if (binding.pinCodeContainer.childCount > 0) {
            binding.pinCodeContainer.removeAllViews()
        }

        for (element in pin) {
            val pinItem = LayoutInflater.from(context).inflate(
                R.layout.pin_item,
                binding.pinCodeContainer,
                false
            ) as TextView
            pinItem.text = element.toString()
            binding.pinCodeContainer.addView(pinItem)
        }
    }