본문 바로가기

Android/Function

[안드로이드] 데이터 바인딩으로 EditText의 Text를 onClick 함수 parameter로 가져오기

728x90
반응형

 

 

  • Edit Text
 <EditText
     android:id="@+id/search_text"
     android:layout_marginLeft="5dp"
     android:layout_width="0dp"
     android:layout_height="match_parent"
     android:layout_weight="10"
     android:hint="검색어를 입력 후 검색 버튼을 눌러주세요." />

 

  • onClick
<ImageButton
    android:layout_marginRight="5dp"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:layout_weight="1"
    android:src="@drawable/ic_search"
    android:onClick="@{()->viewModel.onClickSearch(searchText.getText().toString())}"/>

 

onClikc 메서드 안에 파라미터로 searchText.getText().toString() 을 넣어줍니다.

EditText의 id search_text의 카멜 표기법으로 searchText로 적었고 getText()를 통해 layout에서 EditText의 내용을 가져올 수 있습니다.

 

  • onClick 메서드
fun onClickSearch(searchTxt: String){
     setQuery(searchTxt)
     Log.d("TEST", "Search $searchTxt")
}

 

 

728x90
반응형