package com.exaple.music;

import java.util.List;
import java.util.Timer;
import java.util.TimerTask; import com.exaple.vo.Music; import android.content.Context;
import android.media.MediaPlayer;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.CheckBox;
import android.widget.CompoundButton;
import android.widget.CompoundButton.OnCheckedChangeListener;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.ProgressBar;
import android.widget.SeekBar;
import android.widget.SeekBar.OnSeekBarChangeListener;
import android.widget.TextView; public class Base extends BaseAdapter {
List<Music> list;
Context co; private useMetod muse;
private Timer timer; public Base(List<Music> list, Context co) {
super();
this.list = list;
this.co = co;
/* singletonMusic = Singleton.SingletonMusic(); */
} @Override
public int getCount() {
// TODO Auto-generated method stub
return list.size();
} @Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return list.get(position);
} @Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return ;
} @Override
public View getView(final int position, View convertView, ViewGroup parent) { View view = null;
final ViewHolder vh;
if (convertView == null) {
view = View.inflate(co, R.layout.base, null);
vh = new ViewHolder();
vh.text = (TextView) view.findViewById(R.id.text);
vh.start = (CheckBox) view.findViewById(R.id.start);
vh.see = (SeekBar) view.findViewById(R.id.seek);
vh.time1 = (TextView) view.findViewById(R.id.texttime1);
vh.time2 = (TextView) view.findViewById(R.id.texttime2); view.setTag(vh); } else {
view = convertView;
vh = (ViewHolder) view.getTag();
}
vh.text.setText(list.get(position).getName());
vh.start.setOnClickListener(new OnClickListener() { @Override
public void onClick(View v) {
for (int i = ; i < list.size(); i++) {
if (i != position) {
list.get(i).setCheck(false);
muse.onstop();
notifyDataSetChanged(); }
}
boolean check = list.get(position).isCheck();
if (check) {
// 播放
muse.onplay(position);
System.out.println(position);
int long1 = Singleton.long1;
System.out.println(long1 + "=========");
vh.see.setMax(long1);
muse.seek(vh.see, vh.time1, vh.time2); } else {
muse.onstop();
MainActivity.cancelTime(); } }
});
vh.start.setOnCheckedChangeListener(new OnCheckedChangeListener() { @Override
public void onCheckedChanged(CompoundButton buttonView,
boolean isChecked) { list.get(position).setCheck(isChecked); }
});
vh.start.setChecked(list.get(position).isCheck());
// 判断状态
if (list.get(position).isCheck()) { vh.see.setVisibility(View.VISIBLE);
vh.time1.setVisibility(View.VISIBLE);
vh.time2.setVisibility(View.VISIBLE); } else {
vh.see.setVisibility(View.GONE);
vh.time1.setVisibility(View.GONE);
vh.time2.setVisibility(View.GONE);
} vh.see.setOnSeekBarChangeListener(new OnSeekBarChangeListener() { @Override
public void onStopTrackingTouch(SeekBar seekBar) {
if (Singleton.play != null) {
Singleton.play.seekTo(vh.see.getProgress());
muse.seek(vh.see, vh.time1, vh.time2);
} } @Override
public void onStartTrackingTouch(SeekBar seekBar) {
MainActivity.cancelTime(); } @Override
public void onProgressChanged(SeekBar seekBar, int progress,
boolean fromUser) {
// TODO Auto-generated method stub }
}); return view;
} public class ViewHolder {
TextView text;
public CheckBox start;
SeekBar see;
TextView time1, time2;
} public interface useMetod { void onplay(int position); void onstop(); void onCheck(CheckBox start); void seek(SeekBar seek, TextView text, TextView text1); } public void setIuse(useMetod usemetod) {
muse = usemetod; } }

listview和checkbox的冲突的用法的更多相关文章

  1. Android高级控件(一)——ListView绑定CheckBox实现全选,增加和删除等功能

    Android高级控件(一)--ListView绑定CheckBox实现全选,增加和删除等功能 这个控件还是挺复杂的,也是项目中应该算是比较常用的了,所以写了一个小Demo来讲讲,主要是自定义adap ...

  2. android UI进阶之实现listview中checkbox的多选与记录

    今天继续和大家分享涉及到listview的内容.在很多时候,我们会用到listview和checkbox配合来提供给用户一些选择操作.比如在一个 清单页面,我们需要记录用户勾选了哪些条目.这个的实现并 ...

  3. 【转】android UI进阶之实现listview中checkbox的多选与记录--不错

    原文网址:http://www.cnblogs.com/notice520/archive/2012/02/17/2355415.html 今天继续和大家分享涉及到listview的内容.在很多时候, ...

  4. android 开发-ListView与ScrollView事件冲突处理(事件分发机制处理)

    ListView和ScrollView都存在滚动的效果,所以一般不建议listView和scrollView进行嵌套使用,但有些需求则需要用到两者嵌套.在android的学习中学了一种事件分发处理机制 ...

  5. Android高级控件(一)——ListView绑定CheckBox实现全选,添加和删除等功能

    Android高级控件(一)--ListView绑定CheckBox实现全选,添加和删除等功能 这个控件还是挺复杂的.也是项目中应该算是比較经常使用的了,所以写了一个小Demo来讲讲,主要是自己定义a ...

  6. Scrollerview与listview或者gridview发生冲突

    滑动冲突说实在的就是子view的滑动事件与父view的滑动事件的监听都在同时触发,而导致的activity的点击事件或者布局出问题 常见的就有Scrollerview与Scrollerview与lis ...

  7. Checkbox: ListView 与CheckBox 触发事件冲突的问题

    我相信很多人都遇到过 ListView 中放入checkBox ,会导致ListView的OnItemClickListener无效,这是怎么回事呢? 这是因为checkBox 的点击事件的优先级比L ...

  8. [置顶] android ListView包含Checkbox滑动时状态改变

    题外话: 在xamarin android的开发中基本上所有人都会遇到这个小小的坎,的确有点麻烦,当时我也折腾了好一半天,如果你能看到这篇博客,说明你和我当初也是一样的焦灼,如果你想解决掉这个小小的坎 ...

  9. ListView的CheckBox实现全部选中/不选中

    在Adapter类中定义一个HashMap列表,保存每一行是否被选中: private static HashMap<Integer, Boolean> isSelected; 可见定义了 ...

随机推荐

  1. Linux下配置一个VNC服务器

    在Linux下配置一个VNC服务器,并设置2个用户,要求其中一个用户登录时不需要输入密码. 然后在客户端使用ssh+vncview的方式访问. 1确认vnc安装 2配置vncserver 3测试vnc ...

  2. 如何获取google地图、baidu百度地图的坐标

    google:打开google地图-->查找目的地-->右键:此位置居中-->地址栏键入javascript:void(prompt('',gApplication.getMap() ...

  3. win7下wndows virtual pc 2007 装xp比新版本的 Windows virtual pc 好用

    2007下装xp虚拟机启动快,支持拖放.

  4. ComboSelect 下拉筛选

    Jquery Combo Select下拉筛选 http://www.dowebok.com/179.html

  5. 读取java目录中相同目录、相同名称的文件

    使用ClassLoader的getResources方法(注意,不是getResource,少了s),可获得指定文件的包含jar包名称的多个路径值,然后依次读取文件即可. 使用class,只能通过ge ...

  6. JQuery中的选择器的总结

    JQuery的选择器十分的强大,但是我平常经常用到的却十分的有限,趁现在有时间我感觉有必要总结一下. 基本选择器 $("#ID") 选择ID所对应的标签元素 返回一个标签元素$(& ...

  7. C#程序以管理员权限运行

    原文:C#程序以管理员权限运行 C#程序以管理员权限运行 在Vista 和 Windows 7 及更新版本的操作系统,增加了 UAC(用户账户控制) 的安全机制,如果 UAC 被打开,用户即使以管理员 ...

  8. Python开发【前端】:jQuery

    jQuery简介 jQuery是一个快速.简洁的JavaScript框架,是继Prototype之后又一个优秀的JavaScript代码库(或JavaScript框架).jQuery设计的宗旨是&qu ...

  9. 解决windows下FileZilla server中文乱码问题

    最利用cuteftppro FTP做文件夹同步,发现中文的文件夹及文件名都出现了乱码问题, 一开始以为是cuteftppro的问题,谷哥度娘找了一堆的解决方案都没有解决乱码问题,真是头疼啊! 后来终于 ...

  10. String转json

    一.下载json 具体到http://www.json.org/上找Java-json下载,并把其放到项目源代码中,这样就可以引用其类对象了 转载地址:http://blog.csdn.net/tax ...