본문 바로가기
개발/Android

[ Android ] 액션바 배경 커스텀하기

by blacktree 2022. 7. 25.
반응형

앱 상단에 위와 같이 action bar를 커스텀 하고 싶다. 

아래와 같이 적용하면 된다.

 

1. 커스텀 뷰 적용

var mActionBarView:View = LayoutInflater.from(this).inflate(R.layout.view_title_bar, null)
supportActionBar!!.setDisplayShowCustomEnabled(true)
supportActionBar!!.setDisplayHomeAsUpEnabled(false)
supportActionBar!!.setDisplayShowTitleEnabled(false)
supportActionBar!!.setDisplayShowHomeEnabled(false)
supportActionBar!!.setBackgroundDrawable( ColorDrawable(Color.parseColor("#ffffff")))
supportActionBar!!.setStackedBackgroundDrawable( ColorDrawable(Color.parseColor("#ffffff")))
supportActionBar!!.setCustomView(mActionBarView)

 

  1. setDisplayShowCustomEnabled() : 커스텀 뷰를 보여줄지 말 지를 정하는 함수
  2. setDisplayHomeAsUpEnabled() : 뒤로 가기 버튼 사용 유무
  3. setDisplayShowTitleEnabled() : 액션바에 표시되는 제목의 표시 유무를 설정합니다.
  4. setDisplayShowHomeEnabled() :  앱 아이콘 표시 유무

 

2. 커스텀뷰 적용 시 양쪽의 흰 공백 생기는 부분 제거

val parent: Toolbar = mActionBarView.parent as Toolbar           
parent.setContentInsetsAbsolute(0,0)
val params = ActionBar.LayoutParams(ActionBar.LayoutParams.MATCH_PARENT, ActionBar.LayoutParams.MATCH_PARENT)
supportActionBar!!.setCustomView(mActionBarView, params)
supportActionBar!!.elevation = 0f   //그림자 제거
728x90
반응형

댓글