본문 바로가기
안드로이드 코틀린

[Kotlin][Android]전화번호 입력된 전화 앱 열기

by teamnova 2024. 9. 30.
728x90

오늘은 앱에 번호를 입력 후 전화 앱에서 해당 번호가 입력된 화면을 띄우는 예시를 보여드리겠습니다

 

 

레이아웃 xml 파일 코드(activity_main.xml)

<?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:padding="16dp">

    <EditText
        android:id="@+id/editTextPhoneNumber"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="전화번호 입력"
        android:inputType="phone"/>

    <Button
        android:id="@+id/buttonDial"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="전화 앱 이동하기"/>
</LinearLayout>

 

 

 

액티비티 코틀린 코드

class MainActivity : AppCompatActivity() {

    private lateinit var editTextPhoneNumber: EditText
    private lateinit var buttonDial: Button

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)

        editTextPhoneNumber = findViewById(R.id.editTextPhoneNumber) // 전화번호 입력 EditText 뷰
        buttonDial = findViewById(R.id.buttonDial) // 전화 앱 이동 버튼

        //전화 앱 이동 버튼 누를시 실행 이벤트 설정
        buttonDial.setOnClickListener {
            val phoneNumber = editTextPhoneNumber.text.toString()
            // 전화번호 입력창이 비어있는지 체크
            // 입력한 번호가 있다면 전화 앱 이동
            if (phoneNumber.isNotEmpty()) {
                val intent = Intent(Intent.ACTION_DIAL, Uri.parse("tel:$phoneNumber"))
                startActivity(intent)
            }else{
                // 입력한 번호가 없다면 메세지 띄우기
                Toast.makeText(this, "전화번호를 입력해주세요", Toast.LENGTH_SHORT).show()
            }
        }
    }
}

 

 

 

 

실행 영상

 

전화 앱에서 번호가 입력된 화면이 띄워진 것을 확인할 수 있습니다