-
[Android] 안드로이드 checkedTextView 사용하기안드로이드 스튜디오/텍스트뷰(TextView) 2022. 9. 15. 23:14
1. CheckedTextView 개요
CheckedTextView는 Checkbox와 TextView를 결합시켜 사용자들이 정보를 읽고 체크 표시를 할 수 있게 도와주는 도구입니다.
개발자 입장에서 일일이 TextView와 Checkbox를 구현해야 하는 번거로움을 한번에 해결할 수 있습니다.2. CheckedTextView 구현 (XML)
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:gravity="center" android:orientation="vertical"> <TextView android:id="@+id/txt" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="당신의 이상형은?" android:gravity="center" android:layout_marginBottom="10dp" android:textColor="#009294"/> <CheckedTextView android:id="@+id/ckdTv1" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="키가 큰 사람" android:gravity="center" android:checkMark="?android:attr/listChoiceIndicatorMultiple" android:layout_marginRight="15dp" android:layout_marginLeft="15dp"/> <CheckedTextView android:id="@+id/ckdTv2" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="많이 웃는 사람" android:gravity="center" android:checkMark="?android:attr/listChoiceIndicatorMultiple" android:layout_marginRight="15dp" android:layout_marginLeft="15dp"/> </LinearLayout>
checkMark 속성을 통해 체크박스 모양을 정합니다. 기본 attribute도 가능하며 Drawable 파일과 tint 속성을 이용해 커스터마이징도 가능합니다.
3. CheckedTextView 구현 (Java)
public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); CheckedTextView ckdTv1 = findViewById(R.id.ckdTv1); CheckedTextView ckdTv2 = findViewById(R.id.ckdTv2); ckdTv1.setChecked(false); ckdTv2.setChecked(false); ckdTv1.setClickable(true); ckdTv2.setClickable(true); View.OnClickListener listner = new View.OnClickListener(){ @Override public void onClick(View view) { ((CheckedTextView) view).toggle(); }}; ckdTv1.setOnClickListener(listner); ckdTv2.setOnClickListener(listner); } }
setChecked 메소드를 통해 체크박스 상태를 변경할 수 있으며
toggle 메소드를 이용해 if문 없이도 간단하게 체크박스 상태를 반대로 변경할 수 있습니다.
추천하는 활용법은 단독으로 사용하기보다 ListView나 RecyclerView를 이용해 복제하여 사용하는 것입니다.4. 실제 구현 화면
개발자 문서:
https://developer.android.com/reference/android/widget/CheckedTextView
'안드로이드 스튜디오 > 텍스트뷰(TextView)' 카테고리의 다른 글
[Android] 안드로이드 TextSwitcher 알아보기 (0) 2022.09.12 댓글