마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

BottomSheetDialog 버튼 안보임

0 추천

LinearLayout 에서 버튼이 안보이네요

버튼 클릭이벤트까지는 구현이 됩니다.

image

mtE (170 포인트) 님이 2021년 11월 27일 질문
코드 이미지 첨부가 안되네요..
질문에 관련코드가 같이 있어야 원인을 제대로 알 수가 있습니다. 관련 코드도 같이 올려보세요.
코드 이미지 첨부하려하니 글자 제한수 초과했다고 안올려지더라구요..
xml 디자인으로는 확인버튼이 있는데 그러는거보면 코틀린 클래스에서 문제가 있는거 같습니다만
onActivityCreated 때문일까요?
이미지 말고 텍스트로 붙여서 올려보세요. 이미지를 올리시면 혹 테스트 해볼 때  copy & paste를 해볼 수가 없어서요.
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:paddingHorizontal="32dp"
    android:paddingTop="24dp"
    android:paddingBottom="40dp">

    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginBottom="16dp"
        android:text="30포인트 획득!"
        android:textColor="@android:color/black"
        android:textSize="24sp" />

    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginBottom="8dp"
        android:text="- 주변에 쓰레기통을 발견했어요"
        android:textColor="@android:color/black"
        android:textSize="16sp" />

    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginBottom="20dp"
        android:text="- 쓰레기는 쓰레기통에 버려주세요"
        android:textColor="@android:color/black"
        android:textSize="16sp" />

    <Button
        android:id="@+id/button_bottom_sheet"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="#1c9d9e"
        android:text="확인"
        android:textColor="@android:color/white"
        android:textStyle="bold" />

</LinearLayout>
package com.application.took

import android.content.Context
import android.os.Bundle
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.widget.Button
import android.widget.Toast
import com.google.android.material.bottomsheet.BottomSheetDialogFragment

class BottomSheet(context: Context) : BottomSheetDialogFragment() {

    override fun onCreateView(
        inflater: LayoutInflater,
        container: ViewGroup?,
        savedInstanceState: Bundle?
    ): View? {
        super.onCreateView(inflater, container, savedInstanceState)
        val view = inflater.inflate(R.layout.bottom_dialog, container, false)
        return view
    }

    override fun onActivityCreated(savedInstanceState: Bundle?) {
        super.onActivityCreated(savedInstanceState)
        view?.findViewById<Button>(R.id.button_bottom_sheet)?.setOnClickListener {
            Toast.makeText(context, "30 포인트를 받았습니다!", Toast.LENGTH_SHORT).show()
            dismiss()
        }
    }
}

1개의 답변

0 추천
 
채택된 답변

button_bottom_sheet의 android:background대신 android:backgroudTint를 사용해 보세요.

    <Button
        android:id="@+id/button_bottom_sheet"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:backgroundTint="#1c9d9e" <!-- 요기 -->
        android:textColor="@android:color/white"
        android:text="확인"
        android:textStyle="bold" />

 

spark (227,470 포인트) 님이 2021년 11월 28일 답변
mtE님이 2021년 11월 30일 채택됨
감사합니다. 확인을 늦게했네요 덕분에 해결됐습니다!
...