【问题标题】:Make a tick togglebutton android制作一个刻度togglebutton android
【发布时间】:2016-09-29 11:19:18
【问题描述】:

可以打勾togglebutton吗?

布局如下

 <ImageView
            android:id="@+id/donePic"
            android:src="@mipmap/done"
            android:tint="@color/red"
            android:paddingLeft="320dp"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />

目前button 的刻度是ImageView。如何使 ImageView 变为 toggleButton ?是否可以 ?

【问题讨论】:

标签: android android-imageview togglebutton


【解决方案1】:

使用选择器制作一个 Tic 切换按钮

<ToggleButton 
                android:id="@+id/toggle"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@drawable/check"
                android:focusable="false"
                android:focusableInTouchMode="false"
                android:textOff=""
                android:textOn="" />

选择器

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <!-- When selected, use tic -->
    <item android:drawable="@drawable/tic_img"
          android:state_checked="true" />
    <!-- When not selected, use un tic-->
    <item android:drawable="@drawable/untic_img"
        android:state_checked="false"/>

 </selector>

【讨论】:

  • 如果我想让它在untick时变成红色,并且tick变成红色?
  • 对不起,我没听懂你能不能详细点?
  • 我应该把选择器放在哪里?
  • 在drawable文件夹中亲爱的
  • 需要android:background="@drawable/check" 吗? Selector 是如何被调用的?
【解决方案2】:

您可以使用两张图片,一张用于关闭,另一张用于打开并在 imageView 上设置 onClickListner。

boolean isToggle=false;

yourImageView.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                if(!isToggle)
                {
                    //Do whatever you want to do

                    imageView.setImageResource(R.drawable.toggleOffImage);//set Toggle Off image
                    isToggle =true;
                }
                else
                {
                    //Do whatever you want to do
                    imageView.setImageResource(R.drawable.toggleOnImage); //set Toggle Off image
                    isToggle =false;
                }
            }
        });

【讨论】:

    【解决方案3】:

    为您的 imageView 设置 onClickListenr,当用户单击图像时,将 drawable 更改为完成或撤消。

    你可以保留一个布尔值来查看用户是否点击了boolean ifClick = false

    【讨论】:

      猜你喜欢
      • 2014-05-07
      • 2011-11-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-03-03
      • 1970-01-01
      相关资源
      最近更新 更多