如何使用CheckTextView

如何使用CheckTextView

有時候你會想要實作一個checkbox在右邊
TextView在左邊的一列UI
其實Android有一個元件叫做CheckTextView可以直接讓你使用

如果你想要實作一個CheckTextView, 要怎麼做才好呢?
首先在XML裡面加入一個CheckTextView

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.example.givemepass.checktextviewdemo.MainActivity">

    <CheckedTextView
        android:id="@+id/checkTextView01"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="CheckedTextView"
        android:checkMark="?android:attr/listChoiceIndicatorMultiple"
        />
</RelativeLayout>

注意: 一定要加上這行 android:checkMark=”?android:attr/listChoiceIndicatorMultiple” 才會出現後面打勾的選項 接著在JAVA檔裡面把它叫出來, 寫入它的事件

public class MainActivity extends AppCompatActivity {
    private CheckedTextView mCheckedTextView;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        mCheckedTextView = (CheckedTextView)findViewById(R.id.checkTextView01);
        mCheckedTextView.setChecked(true);
        mCheckedTextView.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
                mCheckedTextView.toggle();
            }
        });
    }
}

toggle方法可以讓你的元件像開關一樣,一開一關 然後你就可以看到下方的圖 沒打勾


github