今天用到ToggleButton开关按钮,由于给他设置错了监听事件,效果不是所想 原来用的多的还是监听状态的改变。写一个例子,显示效果才明白。
package com.rotunda.test;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.CompoundButton;
import android.widget.TextView;
import android.widget.ToggleButton;
public class ToggleButtonTest extends Activity {
/** Called when the activity is first created. */
private ToggleButton tg;
private TextView tv,tvc;
private static boolean ischecked=false;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
tg=(ToggleButton)findViewById(R.id.togglebutton_displaychart_showgrid);
tv=(TextView)findViewById(R.id.textview_main_showtest);
tvc=(TextView)findViewById(R.id.textview_main_showclick);
// tg.setOnCheckedChangeListener(tgcheckedlistener);
tg.setOnClickListener(tgclicklistener);
// this.p
}
ToggleButton.OnClickListener tgclicklistener=new OnClickListener()
{
public void onClick(View v) {
// TODO Auto-generated method stub
if(ischecked)
{
tvc.setText("click ischecked");
}
else
{
tvc.setText("click not checked");
}
}
};
ToggleButton.OnCheckedChangeListener tgcheckedlistener=new ToggleButton.OnCheckedChangeListener()
{
public void onCheckedChanged(CompoundButton buttonView,
boolean isChecked) {
// TODO Auto-generated method stub
if(isChecked)
{
tv.setText("checked");
ischecked=true;
System.out.println("ischecked==="+ischecked);
}
else
{
tv.setText("not checked");
ischecked=false;
System.out.println("ischecked==="+ischecked);
}
}
};
}
其中对应的配置文件是
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
android:id="@+id/textview_main_showtest"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
<TextView
android:id="@+id/textview_main_showclick"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
<ToggleButton
android:id="@+id/togglebutton_displaychart_showgrid"
android:layout_width="70dip"
android:layout_height="wrap_content"
android:layout_marginLeft="10dip"
android:textOff="网格"
android:textOn="网格"
/>
</LinearLayout>
可以试着观察一下来了解
分享到:
相关推荐
在本教程中,我们将深入探讨`ToggleButton`的使用方法,包括其基本属性、事件监听、自定义样式以及源码分析。 首先,`ToggleButton`是`CheckBox`的一个变体,但它在视觉上提供了更明确的开/关状态。在XML布局文件中...
通过`android:layout_width`和`android:layout_height`调整`ToggleButton`的大小,或者使用`android:padding`来改变边距。 5. **自定义动画** Android允许我们自定义切换状态时的动画效果。可以创建一个`...
在本文中,我们将深入探讨toggleButton的使用方法、功能特性以及如何在项目中集成和自定义。 首先,BootstrapPlugin的toggleButton主要通过JavaScript和CSS来实现。它利用了Bootstrap的按钮样式和数据属性来创建可...
### ToggleButton状态开关的使用 在Android开发过程中,`ToggleButton`是一种非常实用的UI控件,它可以被用来作为状态切换的开关。用户可以通过点击该按钮来改变其状态(开或关),这种特性使得`ToggleButton`在很...
包含源代码,Winform中可以使用的ToggleButton,有状态切换事件,鼠标经过、点击效果。要看效果请复制该链接https://blog.csdn.net/brzee88/article/details/80426480
在Android开发中,`ToggleButton`是一个非常实用的控件,它继承自`CheckBox`,但提供了更直观的开/关状态显示,常用于模拟物理开关的效果。本篇将深入探讨如何自定义`ToggleButton`实现一个WiFi开关的功能。 首先,...
2. **使用Animation**:利用Android的`Animation`类或者`ObjectAnimator`,为`ToggleButton`的宽度或平移属性设置动画,使其在切换状态时有滑动效果。 3. **第三方库**:可能引入了如NineOldAndroids这样的兼容库,...
要查看并使用这个GitHub项目,你需要下载`ToggleButton-master.zip`压缩包,解压后导入到Android Studio,通过阅读源码和示例应用,了解其具体实现。同时,可以参考项目的README文件,获取详细的使用说明和示例代码...
`ToggleButton`在XML布局文件中可以像其他按钮一样使用,通过设置属性如`android:textOn`和`android:textOff`来指定开关状态的文字,`android:checked`用来初始化开关状态。默认情况下,`ToggleButton`会显示两个...
在Android开发中,`...当然,还可以进一步扩展,比如添加动画效果、使用自定义字体等,以满足更复杂的设计需求。记住,自定义控件的关键在于理解Android资源系统和UI组件的工作原理,从而创造出符合应用特色的元素。
ToggleButton toggleButton = findViewById(R.id.toggleButton); toggleButton.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged...
这篇资料主要讲解了`ToggleButton`的定义和使用方法。 1. ToggleButton的定义: `ToggleButton`是一种特殊的按钮,它的设计初衷是为了实现开关功能。在Android的视图层次结构中,`ToggleButton`继承自`Button`,但...
- 在 Java 代码中,可以通过 findViewById() 获取到 `ToggleButton` 对象,并使用 `setChecked()` 方法改变其状态,或者监听状态变化事件,使用 `setOnCheckedChangeListener()` 设置监听器。 2. **属性详解**: ...
可以使用`ObjectAnimator`来改变`ToggleButton`的宽度、颜色或其他属性,以反映滑动过程。 5. **状态回调**: 自定义`OnClickListener`和`OnCheckedChangeListener`,以便在状态改变时执行相应的逻辑。这可能包括...
7. **自定义字体**:如果需要使用自定义字体,可以使用`Typeface`对象设置按钮的文字样式,并通过`android:typeface`属性应用到`ToggleButton`上。 8. **颜色主题**:在`styles.xml`中定义一个自定义的主题,然后将...
在本教程中,我们将深入探讨如何在Android应用中使用`ToggleButton`来实现滑动开关效果。 首先,让我们了解`ToggleButton`的基本概念。`ToggleButton`是`Button`的一个子类,它具有两种状态:选中(checked)和未...