您的位置:首页 > 移动开发 > Android开发

android ToggleButton的使用

2014-10-07 11:07 423 查看
我是要实现点击togglebutton实现不同图片的切换。

下面是我的togglebutton的xml代码:

<span style="font-size:18px;"><ToggleButton
android:id="@+id/hsp_star"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"

android:layout_marginRight="50dp"
android:background="@drawable/hsp_toggle_map_list"
android:layout_alignBottom="@id/hsp_search_resultname"

android:textOff=" "
android:textOn=" " /></span>
其中hsp_toggle_map_list是在drawable中建立的一个xml文件:

<span style="font-size:18px;"><?xml version="1.0" encoding="utf-8"?>

<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_checked="true"
android:drawable="@drawable/star_pink" /> <!-- pressed -->
<item android:drawable="@drawable/star" /> <!-- default/unchecked -->
</selector>
</span>

然后,就要为hsp_star设置监听器啦!

<span style="font-size:18px;">holder.star=(ToggleButton) convertView.findViewById(R.id.hsp_star);

holder.star.setOnClickListener(this);</span>

在监听器中进行图片的切换,记住在之间要设置count=0;

<span style="font-size:18px;">@Override
public void onClick(View v) {
// TODO Auto-generated method stub
switch (v.getId()) {
case R.id.hsp_star:
clickstar();
break;

default:
break;
}
}</span>
<span style="font-size:18px;">@SuppressWarnings("deprecation")
private void clickstar() {
// TODO Auto-generated method stub
//Log.e("asd;fhkjl","dasfsdfdfdsg msg");
//preferences=fragmentActivity.getSharedPreferences("favoritename", Context.MODE_PRIVATE);
//editor=preferences.edit();
if(count%2==0){
//holder.star.setImageResource(R.drawable.star_pink);
//holder.star.invalidate();
//Fragmentfavorite.searchfavorite.add(FragmentSearch.searchcontent);
//editor.putString("searchcontentname", FragmentSearch.searchcontent);
//editor.commit();
insertData(HspDeviceList.dbHelper.getReadableDatabase(),FragmentSearch.searchcontent);
holder.star.setChecked(true);
Log.e("count1", String.valueOf(count));
}
else{

holder.star.setChecked(false);
deleteData(HspDeviceList.dbHelper.getReadableDatabase(),FragmentSearch.searchcontent);
//Log.e("judeg", String.valueOf(judeg));
Log.e("count2", String.valueOf(count));

}
count++;

}</span>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息