设为首页 加入收藏

TOP

Android之实现滑动开关组件(二)
2015-02-02 14:32:51 来源: 作者: 【 】 浏览:29
Tags:Android 实现 滑动 开关 组件
tchOnBkg.getWidth() / 2)) {
? ? isSwitchOn = true;
? ?} else {
? ? isSwitchOn = false;
? ?}
? ?
? ?//调用接口回调方法,将开关状态通知给监听对象
? ?if(previousState != isSwitchOn){
? ? if(onSwitchListenerList.size() > 0){
? ? ?for(OnSwitchListener listener : onSwitchListenerList){
? ? ? listener.onSwitched(isSwitchOn);
? ? ?}
? ? }
? ?}
? ?break;


? default:
? ?break;
? }


? this.invalidate();
? return true;
?}


}


我们再来看看开关状态监听接口代码,如下:


package com.bear.swtichbuttondemo;


public interface OnSwitchListener {
?
?public abstract void onSwitched(boolean isSwitchOn);
?
}


最后是我们的Activity中的代码,这里需要传两张图片给自定义组件,当然你也可以传两张自己做好的图片,代码如下:


package com.bear.swtichbuttondemo;


import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.Toast;


public class MainActivity extends Activity {


?private MySwitchButton mySwitchButton;
?private Button myBtn;


?@Override
?protected void onCreate(Bundle savedInstanceState) {
? super.onCreate(savedInstanceState);
? setContentView(R.layout.activity_main);
? setupViews();
?}


?private void setupViews() {
? mySwitchButton = (MySwitchButton) findViewById(R.id.my_switch_button);
? //传图片给自定义组件
? mySwitchButton.setImageResource(R.drawable.switch_bkg_switch,
? ? R.drawable.switch_btn_slip);
? myBtn = (Button) findViewById(R.id.button);
?
? //设置开关状态监听
? mySwitchButton.setOnSwitchStateListener(new OnSwitchListener() {


? ?@Override
? ?public void onSwitched(boolean isSwitchOn) {
? ? if (isSwitchOn) {
? ? ?Toast.makeText(MainActivity.this, "开关开启",
? ? ? ?Toast.LENGTH_SHORT).show();
? ? } else {
? ? ?Toast.makeText(MainActivity.this, "开关关闭",
? ? ? ?Toast.LENGTH_SHORT).show();
? ? }


? ?}
? });
?
? myBtn.setOnClickListener(new OnClickListener() {
? ?
? ?@Override
? ?public void onClick(View v) {
? ? boolean isOn = mySwitchButton.getSwitchState();
? ? mySwitchButton.setSwitchState(!isOn);
? ?}
? });
?}


}


最后附上Android之实现滑动开关组件代码的下载地址:


------------------------------------------分割线------------------------------------------


具体下载目录在 /2014年资料/12月/15日/Android之实现滑动开关组件


------------------------------------------分割线------------------------------------------


首页 上一页 1 2 下一页 尾页 2/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇C++中对txt文件的读写操作 下一篇Android之实现“抽奖大转盘”

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: