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. Canvas 实现七彩喷泉

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...

  2. UE4开发神秘海域类游戏原型 初阶(二):动画资源的整合

    前一篇已经确定神海类游戏原型的目标,首先要做的就是3C's(Character, Controls, Camera)的开发.   UE4的3C's的程序部分开发主要也就是基于他的GamePlay Fr ...

  3. java并发编程-基础

    线程带来的风险 安全性:多线程操作执行顺序的不可预测性 -- 永远不发生糟糕的事情: 活跃性:代码无法得到执行,死锁.饥饿问题 -- 某件正确的事情最终会发生: 性能问题:活跃性只意味着某件事最终会发 ...

  4. test hypertext links for validity, accessibility, and recent modification

    https://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html The HEAD method is identical to GET except th ...

  5. easyui datagrid 编辑模式详解

       一,建立编辑器 从api得知,扩展一种新的编辑器类型,需要提供以上几个方法.项目中正好需要一个checkbox 类型编辑器,但在easyui中并没提供这样的编辑器,那我们可以通过扩展编辑器来解决 ...

  6. JAVA中去掉空格经典整理

    JAVA中去掉空格经典整理 JAVA中去掉空格          1. String.trim() --------------trim()是去掉首尾空格           2.str.replac ...

  7. iOS 模拟器变的很多的问题

    运行一下命令 xcrun simctl list devices | grep -v '^[-=]' | cut -d "(" -f2 | cut -d ")" ...

  8. JS基础知识

    JavaScript的三个不同的组成部分: (1)ECMAScript,提供核心语言功能,所有浏览器大体上都支持ECMA第三版 (2)文本对象模型(DOM),提供访问和操作网页内容的方法和接口 (3) ...

  9. chm转换为html

    在Windows下chm转换为html的超简单方法(反编译CHM文件的方法) 通过调用Windows命令,将chm 文件转换为html 文件. 方法: 命令行(cmd),输入hh -decompile ...

  10. 解决界面有搜索栏时,点击TableView的空白界面,键盘不消失的问题

    UITapGestureRecognizer * tap = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(h ...