๋งˆ MaterialToolbar ์•ผ ๋‹ˆ ๋จธ์„  ๊ณ ๋ฏผ ์žˆ๋‚˜ ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค ๋‹ค ์“ฐ๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ์ผ๋Š”๋ฐ ์™œ ์—๋ฎฌ๋ ˆ์ดํ„ฐ๊ฐ€ ์•ˆ ๋Œ์•„๊ฐ€๋Š”๋ฐ

 

 

MainActivity.kt

class MainActivity : AppCompatActivity() {

    private lateinit var binding: ActivityMainBinding
    private lateinit var toolbar: MaterialToolbar

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        binding = ActivityMainBinding.inflate(layoutInflater)
        setContentView(binding.root)

        toolbar = findViewById(R.id.toolbar)
        setToolbarListener()
    }
    
    ...
}

 

toolbar = findViewById(R.id.toolbar) ์ด ๋ผ์ธ๋งŒ ์“ฐ๋ฉด ์—๋ฎฌ๋ ˆ์ดํ„ฐ๊ฐ€ ๋จนํ†ต์ด ๋ผ์„œ ๋ฐ”์ธ๋”ฉํ•˜๋Š” ๊ณผ์ •์—์„œ ๋ถ„๋ช…ํžˆ ์—ฌ๊ธฐ์„œ ๋ฌธ์ œ๊ฐ€ ์žˆ์„ ๊ฑฐ๋ผ๊ณ  ์ƒ๊ฐํ•˜๊ณ  ์ดํ‹€์„ ์—ฌ๊ธฐ๋งŒ ๋œฏ์–ด๋ณด๊ณ  ์žˆ์—ˆ๋Š”๋ฐ ๋ฌธ์ œ๋Š” ๋‹ค๋ฅธ ๊ณณ์— ์žˆ์—ˆ๋‹ค

 

์‹ค์ œ ์›์ธ์€ ํˆด๋ฐ”์™€ ํˆด๋ฐ”๋ฅผ includeํ•œ ๋ ˆ์ด์•„์›ƒ์—์„œ ๋˜‘๊ฐ™์€ id๋ฅผ ์ค‘๋ณต์œผ๋กœ ์‚ฌ์šฉํ–ˆ๋˜ ๊ฒƒ์ด์—ˆ๋‹ค

toolbar ๋ผ๋Š” ์•„์ด๋””๋ฅผ ๊ฐ€์ง„ ๊ฐœ์ฒด๊ฐ€ ๋‘ ๊ฐœ๊ฐ€ ์žˆ์œผ๋‹ˆ ์–ด๋–ค ๊ฑธ ์ฐพ์•„์„œ ๋ฐ”์ธ๋”ฉํ•ด์•ผ ํ• ์ง€ ๋ชฐ๋ผ์„œ cannot be cast ์˜€๋˜ ๊ฒƒ ๊ฐ™๋‹ค

 

toolbar.xml

<?xml version="1.0" encoding="utf-8"?>
<com.google.android.material.appbar.AppBarLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

    <com.google.android.material.appbar.MaterialToolbar
        android:id="@+id/toolbar"
        android:layout_width="match_parent"
        android:layout_height="?attr/actionBarSize"
        app:menu="@menu/menu_toolbar"
        app:title="@string/app_name"
        style="@style/Widget.MaterialComponents.Toolbar.Primary"/>

</com.google.android.material.appbar.AppBarLayout>

 

activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

    <include
        android:id="@+id/toolbar"
        layout="@layout/toolbar"/>

    ...

</androidx.constraintlayout.widget.ConstraintLayout>

 

๋ณ€๊ฒฝ ํ›„

activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

    <include
        android:id="@+id/included_toolbar"
        layout="@layout/toolbar"/>

    ...

</androidx.constraintlayout.widget.ConstraintLayout>

 

์ค‘๋ณต๋˜์ง€ ์•Š๊ฒŒ ์•„์ด๋””๋ฅผ ๋ณ€๊ฒฝํ•ด์ฃผ๊ณ  ์‹คํ–‰์‹œํ‚ค๋‹ˆ ์ •์ƒ์ ์œผ๋กœ ์ž‘๋™ํ•œ๋‹ค

+ Recent posts