ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 안드로이드 이미지 버튼 만들기 및 이벤트 처리 kotlin vs java
    안드로이드 어플 개발 2023. 9. 28. 15:45

    프로젝트 진행 중 문제가 발생하여 안드로이드 스튜디오 언어를 코틀린에서 자바로 바꿔야하는 상황이 발생했따ㅜ

    강의는 코틀린으로 들어서 코틀린이 훨씬 익숙하지만 머 어쩌겠음 그래도 같은 안스고 자바 기반이니까 별로 안 다를꺼라고 생각했는데 생각보다 차이가 조금씩 있어서 나중에 또 볼 수 있도록 기록하려고 함

     

    안스에서 제공하는 버튼은 넘.. 못생겼고.. 원하는 버튼 모양이 있어서 그걸로 진행하려고 했음

     

    1. kotlin에서는? 

     

    //layout

    <ImageView
        android:id="@+id/aiBtn"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/ai"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

    res > drawable 파일에 이미지를 넣어주고 걍 이미지 뷰로 만들면 됨

     

    그리고 메인에서는 

    val aiBtn = findViewById<ImageView>(R.id.aiBtn)
    aiBtn.setOnClickListener {
        Toast.makeText(this,"아야",Toast.LENGTH_LONG).show()
    
    }

    val로 버튼 이름 만들어주고 걍 이렇게 하면 뚝딱 완성인데

     

     

    2. java에서는..!

     

    //layout

    <ImageButton
        android:id="@+id/aiBtn"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@drawable/ai"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

    res에 이미지 넣어주는 것까진 같았지만

    이미지 버튼으로 선언 후 원하는 이미지를 background로 불러와야했다.

     

     

    메인에선

    ImageButton aiBtn = findViewById(R.id.aiBtn);
    
    aiBtn.setOnClickListener(new View.OnClickListener(){
        public void onClick(View view){
            Toast.makeText(getApplicationContext(), "아야", Toast.LENGTH_LONG).show();
        }
    });

    ImageButton으로 선언 후 setOnClickLister안에 또 구구절절 onClickListener()를.. 토스트 메세지를 쓸 때도 구구절절 onClick을.. 

     

Designed by Tistory.