android点击按钮上的复选标记

时间:2012-03-12 05:11:53

标签: android button checkmark

单击按钮时,按钮的最左侧角应显示复选标记图标,当在同一按钮上单击时,复选标记图标应显示。在这种情况下,有些人会帮助我吗?

3 个答案:

答案 0 :(得分:7)

虽然已经回答了这个问题,但这里有一个替代方案:添加一个unicode复选标记符号。其中有两个:\ u2713和\ u2714。只需将它们添加到您的字符串中:

<string name="button_label_on">\u2713 on</string>
<string name="button_label_off">off</string>

当然,您也可以将其直接放入布局代码中:

<Button
   ...
   android:text="\u2713 on"
   />

答案 1 :(得分:3)

您可以在按钮左侧添加可见度为Gone的ImageView(让我们说tick.png)。并设定其可见性。这是代码:

<LinearLayout 
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent">
        <ImageView
            android:id="@+id/iv_tick"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:visibility="gone"
            android:src="@drawable/tick"/>
        <Button 
            android:id="@+id/btn_tick"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Press"/>
    </LinearLayout>

现在,在按钮点击事件中设置其可见性:

Button btn_tick = (Button)findViewById(R.id.btn_tick);
    btn_tick.setOnClickListener(new OnClickListener()
        {
            public void onClick(View v)
            {
                ImageView iv_tick = (ImageView)findViewById(R.id.iv_tick);
                int visibility = iv_tick.getVisibility();
                if(visibility == View.VISIBLE)
                {
                    iv_tick.setVisibility(View.GONE);
                }
                else
                {
                    iv_tick.setVisibility(View.VISIBLE);
                }
            }
        });

答案 2 :(得分:0)

结帐CheckBox小部件。