오늘은 화면을 넘어가게 기능을 구현하고 frameLayout을 통해 이미지 위에 텍스트가 올라가게 하는 것을 알았다.
먼저 뷰바인딩을 사용하기 위하여 build.gradle.kts 에서
android {
// ...
viewBinding {
enable = true
}
}
설정을 해주고 Activity에서
class MaingActivity : AppCompatActivity() {
lateinit var binding: ActivityMainBinding // binding 변수 생성
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
binding = ActivityMainBinding.inflate(layoutInflater) // inflate로 초기화 한다
setContentView(binding.root) // binding.root 뷰를 화면에 표시하도록 설정
그 뒤에 사용할 때는
binding.retrunBtn.setOnClickListener{
val intent = Intent(this, SubActivity::class.java)
startActivity(intent)
}
이렇게 returnBtn을 눌러서 지금 화면(MainActivity)에서 SubActivity로 넘어가는 버튼을 활성화 시킬 수 있다.
그 다음 이미지 위에 TextView를 올리고 싶어서 알아본 Layout 위에 올리는 방법이다.
<FrameLayout
android:id="@+id/frameLayout"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginBottom="23dp"
app:layout_constraintBottom_toTopOf="@+id/imageButton2"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<ImageView
android:id="@+id/imageView3"
android:layout_width="match_parent"
android:layout_height="25dp"
app:srcCompat="@drawable/bar"
tools:layout_editor_absoluteX="0dp"
tools:layout_editor_absoluteY="0dp" />
<TextView
android:id="@+id/teamName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="5dp"
android:text="팀 소개"
android:textColor="@color/white"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.046"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
</FrameLayout>
이미지 뷰를 먼저 작성하고 텍스트 뷰를 작성하니

다음과 같이 검은색 바 이미지 위에 TextView를 올릴 수 있었다.
오류가 날것 같긴 해서 내일 더 수정해 봐야겠다.