先给导航块的a标签设置img属性和data-img属性;img属性为未选中图片,data-img为选中图片。第一个按钮的img图片应设置为默认选中的状态。
//点击每个按钮后进行按钮切换图片 *** 作
$(".tab-bar-item").on("click", function () {
//先const clickImg变量为他的data属性(选中图片) ,然后找到img图片的src属性将未选中的图片点击后替换为选中图片
const clickImg = $(this).data("img")
$(this).find("img").attr("src",clickImg)
//找到被点击标签的其他兄弟标签,用each遍历 const noclick为未选中的img图片,将点击标签的其他兄弟标签的img换为未选中图片就可以了
$(this).siblings().each(function(){
const noclickImg= $(this).attr("img")
$(this).find("img").attr("src",noclickImg)
})
}
Switch和ToggleButtn都是开关按钮,我们在WLAN、GPS常用开关控制。一、设计界面
1、打开“res/layout/activity_main.xml”文件。
从工具栏向activity拖出1个Switch开关按钮、1个ToggleButton按钮。
2、打开activity_main.xml文件。
代码如下:
[html] view plaincopy
<?xml version="1.0" encoding="utf-8" ?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<Switch
android:id="@+id/wlan"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textOn="开"
android:textOff="关"
/>
<ToggleButton
android:id="@+id/gps"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="ToggleButton" />
</LinearLayout>
二、程序文件
打开“src/com.genwoxue.switchtogglebutton/MainActivity.java”文件。
然后输入以下代码:
[java] view plaincopy
package com.genwoxue.switchtogglebutton
import android.app.Activity
import android.os.Bundle
import android.widget.Switch
import android.widget.ToggleButton
import android.widget.CompoundButton
import android.widget.CompoundButton.OnCheckedChangeListener
import android.widget.Toast
public class MainActivity extends Activity {
//声明Switch与ToggleButton
private Switch wlan=null
private ToggleButton gps=null
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
//获取Swtich对象、ToggleButton对象
wlan=(Switch)super.findViewById(R.id.wlan)
gps=(ToggleButton)super.findViewById(R.id.gps)
/*因为Switch组件继承自CompoundButton,在代码中可以通过实现CompoundButton.OnCheckedChangeListener接口,并
实现其内部类的onCheckedChanged来监听状态变化。*/
wlan.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if(isChecked)
Toast.makeText(getApplicationContext(), "Switch状态为开", Toast.LENGTH_SHORT).show()
else
Toast.makeText(getApplicationContext(), "Switch状态为关", Toast.LENGTH_SHORT).show()
}
})
/*因为ToggleButton组件继承自CompoundButton,在代码中可以通过实现CompoundButton.OnCheckedChangeListener接口,并
实现其内部类的onCheckedChanged来监听状态变化。*/
gps.setOnCheckedChangeListener(new OnCheckedChangeListener(){
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if(isChecked)
Toast.makeText(getApplicationContext(), "Switch状态为开", Toast.LENGTH_SHORT).show()
else
Toast.makeText(getApplicationContext(), "Switch状态为关", Toast.LENGTH_SHORT).show()
}
})
}
}
三、运行效果
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)