SeekBar使用显示歌曲播放进度及时间 上一篇:Android MediaPlayer 我们之前播放音乐的时候都会有进度条,今天我们就来加一个进度条,并显示你的播放进度和当前歌曲时间。...),一个留着备用,第二个里面我们放了两个TextView(用于显示时间)和一个SeekBar(进度条)。...我们想一下,我们已经知道这个音频文件放在手机里面了,也已经可以播放了,那么我要用进度条来显示当前歌曲的播放进度该怎么做,并且你可以通过手指拖拽这个Seekbar来到你想要的歌曲片段出,并且松手就要播放音乐...这里面有三个参数,seekbar就是进度条,progress就是进度值,而fromUser参数,这个参数的作用是触发SeekBar的onProgressChanged回调接口时,可以根据这个参数判断是手动滑动...结束时间,通过计算赋值给定义的值,在赋值给tv_end显示在界面上。
一:ProgressBar ProgressBar有很多种进度的样式,比如环形加载,水平横向进度条加载 1:环形 不用style,默认显示为环形 使用Wrap也可以显示出来,是因为它本身内部就有一定的大小...,叫不确定模式 若未设置 android:indeterminate,默认值是 false进度条会显示确定模式(即展示具体进度值,如 0%~100%)。...若设置为 android:indeterminate="true",则会切换为不确定模式(循环动画,不显示具体进度) 注:在一些Android版本下,旋转的ProgressBar通常直接与不确定模式相关联...总结:在Android当中,所有页面更新的相关操作,都要在主线程中实现 3:细节处理 每次点击开始下载按钮时,先把进度初始化为0 效果如下 四:Seekbar 1:样式 样式如下;主要用于调节音量,亮度等...;默认最大进度为100,progress和max就不多介绍了;主要用法还是在java代码上 SeekBar android:id="@+id/sb_volume"
onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //设置窗口模式,因为需要显示进度条在标题栏...setProgress(intCounter); myProgress1.setProgress(intCounter); setProgress(intCounter*100);//设置标题栏中前景的一个进度条进度值...//setSecondaryProgress(intCounter*100);//设置标题栏中后面的一个进度条进度值 //Thread.currentThread().interrupt...("当前值:"+ progress); } @Override public void onStartTrackingTouch(SeekBar seekBar) { // TODO Auto-generated...{ @Override public void onClick(View v) { // TODO Auto-generated method stub //设置通知在状态栏显示的图标
一.SeekBar基本介绍 SeekBar是Android平台上的一个UI组件,用于显示一个可滑动的滑块条,并允许用户通过拖动滑块来选择一个数值范围。...二.SeekBar使用方法 下面是SeekBar的一些基本信息和使用方法: SeekBar是Android的一个类,位于android.widget.SeekBar包中。...的进度改变时触发该方法 // 可以根据进度值进行相应的操作 } @Override public void onStartTrackingTouch(SeekBar...SeekBar seekBar) { // 当用户停止拖动SeekBar时触发该方法 } }); 三.SeekBar常用属性 android:max:设定SeekBar可选取的最大值...android:progress:设置SeekBar的当前进度值。 android:thumb:设置滑块的样式(可以是一个图片资源)。
--第一部分标题栏--> <TextView android:id="@+id/tvTitle" android:layout_width="match_parent...{ //SeekBar进度显示到TextView上 tvTempValue.setText(String.valueOf(progress...seekBar, int progress, boolean fromUser) { //SeekBar进度显示到TextView上 tvHumiValue.setText...(SeekBar seekBar, int progress, boolean fromUser) { //SeekBar进度显示到TextView上...SettingThresholdDialog.this.dismiss(); } }); } } 在主类中创建对话框并显示
" android:text="SeekBar"/> SeekBar android:id="@+id/sb_seekbar" android...在定义RatingBar中有两个属性需要说明一下,android:numStars是用来设置你要显示的星星的个数,这个根据需求自己来设置,我在这里设置为5个,android:stepSize是来设置RatingBar...bar.setMax(100);//设置seekbar的最大值 bar.setOnSeekBarChangeListener(this);//设置监听器,监听进度条的改变状态 ... * seekBar, 当前的seekbar * progress, seekbar的当前进度 * fromUser, 是否是用户改变进度的 ...end--->"+"+seekBar="+seekBar.getProgress()); } /** * 当ratingBar的进度发生变化时调用该方法
我们来看一个例子,比如下面这个音乐播放应用,该应用允许用户通过拖动进度条 (SeekBar) 来快进或快退当前歌曲。...如下方代码,我们给进度条增加了底边距,增加的值正好是系统强制交互区的高度: ViewCompat.setOnApplyWindowInsetsListener(seekBar) { view, insets...但请注意,我们依然需要在播放控件底部插入一个内边距,其值等于系统栏的高度,这样可以使歌曲名称等文本不会被系统导航条 (即屏幕底部的那条 "横线") 遮盖。...这时屏幕底部的系统手势交互冲突已经解决了,但屏幕左右两侧的 "后退" 操作依然和进度条有冲突: 在上图中,由于进度条的播放头正好位于右侧手势区内,因此系统认为用户正在用手势执行 "返回" 操作,因此显示了...实际上会在 Android 10 中自动为您执行上述切出操作,因此您无需在 Seekbar 中这么做。
不知不觉这已经是第51期了,在前面50期我们学了Android开发中使用频率非常高的一些UI组件,当然这些组件还不足够完成所有APP的开发,还会经常用到一些诸如进度条、拖动条、搜索框、时间和日期选择器等组件...android:progress:进度条已完成进度值。 android:progressDrawable:设置轨道对应的Drawable对象。...android:indeterminate:如果设置成true,则进度条不精确显示进度。 android:indeterminateDrawable:设置不显示进度的进度条的Drawable对象。...布局文件的后面定义的两个水平进度条,第一个进度条有设置进度值;第二个进度条不精确显示进度。 程序其余地方不用修改,直接运行程序可以看到下图所示界面效果。 ?...从上图发现,这些进度条都不是很美观,而且也没法显示具体进度值,这就需要开发者自定义ProgressBar了,我们下期再来一同学习。
大家好,又见面了,我是全栈君 SeekBar 拖动条:拖动条和滚动栏类似,当是拖动条能够拖动滑块改变进度 RatingBar 星级评分条:星级评分条与拖动条相似 SeekBar特有的xml属性 android...:numStars 共同拥有多少个星级 android:rating 默认的星级 android:stepSize 每次至少改变多少个星级 为了知道改变的进度而做对应的操作,我们须要加入监听..."/> SeekBar android:id="@+id/seekBar" android:layout_width="180dp" android...; import android.widget.SeekBar; import android.widget.SeekBar.OnSeekBarChangeListener; @TargetApi(Build.VERSION_CODES.HONEYCOMB...:拖动条的进度 * fromUser:是否用户手动改变 */ @Override public void onProgressChanged(SeekBar seekBar,
一、SeekBar 拖动条和进度条非常相似,只是进度条采用颜色填充来表明进度完成的程度,而拖动条则通过滑块的位置来标识数值——而且拖动条允许用户拖动滑块来改变值,因此拖动条通常用于对系统的某种数值进行调节...为了让程序能响应拖动条滑块位置的改变,程序可以为SeekBar绑定一个OnSeekBaiChangeListener监听器,其三个回调方法如下: onProgressChanged:进度发生改变时会触发...实际上星级评分条与拖动条的用法、功能都十分接近:它们都允许用户通过拖动来改变进度。RatingBar与SeekBar的最大区别在于:RatingBar通过星星来表示进度。...RatingBar所支持的常见XML属性如下: android:isIndicator:是否用作指示,用户无法更改,默认false。 android:numStars:显示多少个星星,必须为整数。...android:rating:默认评分值,必须为浮点数。 android:stepSize: 评分每次增加的值,必须为浮点数。
发出一条通知后,手机最上方的状态栏中会显示一个通知的图标,下拉状态栏后可以看到通知的详细内容。 通知的基本用法 通知的用法比较灵活,既可以在活动里创建,也可以在广播接收器里创建,当然还可以服务里创建。...// 第三个参数用于指定通知被创建的时间,以毫秒为单位,当下拉系统状态栏时,这里指定的时间会显示在相应的通知上 Notification notification =newNotification(R.drawable.ic_launcher...下标为0的值表示手机静止的时长,下标为1的值表示手机振动的时长,下标为2的值又表示手机静止的时长, //以此类推。...super.onCreate(savedInstanceState); setContentView(R.layout.notification_layout); //如果没有在代码中对该通知进行取消,它就会一直显示在系统的状态栏上显示...,不停的刷新进度条,使用计时器每500毫秒获取一次播放进度 发消息至Handler,把播放进度放进Message对象中,在Handler中更新SeekBar的进度 Timer timer =newTimer
目录 1.实现扫描本地音乐 2.音乐的播放与控制 3.关联进度条seekbar,自定义seekbar 4.单曲循环,顺序播放,随机播放的实现 5.设置喜爱音乐 6.播放列表背景图设置与保存 7.实现APP...3.关联进度条seekbar,自定义seekbar 关联进度条的方法也很简单,这里将更新seekbar的方法重新开了一个线程,专门处理更新,代码如下 // 自定义的线程,用于下方seekbar的刷新...至此,你的音乐播放就已经和seekbar进度条关联起来了,但是你可能会发现系统默认的进度条很丑,不符合你的审美,那么我们就需要更改seekbar的样式,也就是自定义seekbar。...自定义seekbar,需要在布局中设置progressDrawable和thumb,分别对应进度条的背景和进度条的指示小图标,我这里进度条的背景采用的是drawable,代码如下 <?...dialog的activity,便采用了这种方式,最后效果如下 看上去就像一个dialog,其实是一个activity,然后在这里根据用户的选择,来设置不同的主题,然后拿到主题的类型之后,在代码中根据这个值去判断应该显示哪个主题
高级控件 1.自动完成文本控件 在搜索引擎(百度、搜狗)输入几个文字,会出来一些提示。可以减少用户的输入,提高程序的效率。刚才看到的自动提示,ajax技术。...findViewById(R.id.fileDown); btnProgress=(Button)findViewById(R.id.btn_progress); //设置进度条的最大值...控件,用来接收用户输入的控件,类似于拖动条,可以直观的显示用户需要的数据。...可以显示数值,也可以设置标度。 设置音量,使用滑块。...seekBar) { } }); } } 显示效果 5.列表视图 listView是一个常用的控件,会根据屏幕大小,把具体的内容以列表的形式显示出来,
Fragment , 两个 Fragment 之间借助 ViewModel + LiveData 进行通信 ; 第一个 Fragment 代码 先将 ViewModel 中的 LiveData 数据中的 进度值设置给...import android.view.View import android.view.ViewGroup import android.widget.SeekBar import android.widget.SeekBar.OnSeekBarChangeListener...// 设置进度条拖动事件 seekBar.setOnSeekBarChangeListener(object : OnSeekBarChangeListener{...=".MainActivity"> SeekBar android:id="@+id/seekBar" android:layout_width="0dp"..., 将进度条的进度 在 Fragment2 中的 TextView 中显示 , 并且横竖屏切换时 , 数据没有丢失 ; ---- 博客代码 : CSDN 下载 : https://download.csdn.net
项目结构: 1 New Android Project-> 2 Project name:SeekBar 3 Build Target:Android 2.2 4 Application name: SeekBar...; 4 import android.os.Bundle; 5 import android.util.Log; 6 import android.widget.SeekBar; 7 import...android.widget.Toast; 8 import android.widget.SeekBar.OnSeekBarChangeListener; 9 10 public class...) findViewById(R.id.sb_test_id); 22 // 进度条的最大值 23 sb_test.setMax(100); 24 sb_test.setOnSeekBarChangeListener...44 Toast.LENGTH_LONG).show(); 45 } 46 47 // 当进度条的进度方式变化的时候,就会调用这个方法
其中通过SurfaceView显示视频的画面,通过MediaPlayer来设置播放参数、并控制视频的播放操作;该方式的具体说明参见《Android开发笔记(五十七)录像录音与播放》。...show : 显示控制条。 hide : 隐藏控制条。 isShowing : 判断控制条是否显示。 setPrevNextListeners : 设置前一个按钮与后一个按钮的点击监听器。...,高度太宽了; 2、按钮样式无法定制,且不能增加和删除按钮; 3、进度条与播放时间的样式也不能定制; 4、播放器的视频画面不会自动全屏显示; 5、播放器没有实现调大和调小音量; 6、播放器不会自动设置标题和背景...,那么视频播放就会停止,回到页面刚进去的初始状态; 对于前两个问题,可通过设置页面主题来予以调整,如下所示,设置属性android:windowFullscreen来隐藏系统状态栏,设置属性android...; import android.widget.RelativeLayout; import android.widget.SeekBar; import android.widget.SeekBar.OnSeekBarChangeListener
TextView TextView 是一个用于显示文本的控件。它可以用来显示短句、段落或者标题。 属性 android:text: 设置显示的文本。...它通常用于表单、搜索框等需要用户输入文本的地方。 属性 android:hint: 设置提示文本,在用户输入前显示。 android:inputType: 设置输入类型(如文本、数字、密码等)。...ProgressBar ProgressBar 是一个进度条控件,用于显示任务的进度。 属性 android:indeterminate: 设置进度条是否为不确定模式(即加载中,不显示具体进度)。...android:max: 设置进度条的最大值。 android:progress: 设置当前进度。...SeekBar SeekBar 是一个滑动条控件,允许用户在指定范围内选择一个值。 属性 android:max: 设置滑动条的最大值。 android:progress: 设置当前选定的值。
--播放歌曲时,显示你播放的是哪一首歌,跑马灯效果--> <LinearLayout android:visibility="gone"...--歌曲播放进度条 ,样式是自定义,因为原生的太丑了--> SeekBar android:layout_marginLeft=...进度条样式 SeekBar seekBar) { } // 当手停止拖拽进度条时执行该方法 //...获取拖拽进度 // 将进度对应设置给MediaPlayer @Override public void onStopTrackingTouch(SeekBar
ProgressBar 比较特殊的地方是这个类还支持第二个进度条,如示例所示,第二个进度条在第一个进度条的背后显示,两个进度条的最大值是相同的。...ProgressBar 的主要参数是进度条的当前值和最大值。...() // 获得第二个进度条的进度 ProgressBar 在使用的时候,要注意最大值和当前值的关系,在 UI 上所呈现的状态,其实是当前值和最大值的一个比例。...因此这里调用了几个 Activity 中的函数,用于设置在标题栏中的进度条。...RatingBar 和 SeekBar 两个类又扩展了AbsSeekBar,其中 RatingBar 可以直接用星星的方式来表示进度;SeekBar 可以使用可拖拽的小图标。
拖动条组件(SeekBar) SeekBar android:id="@+id/seekBar1" android:layout_width="match_parent..." android:layout_height="wrap_content" android:max="100" //设置最大值 android...="wrap_content" android:text="当前值:0" android:textAppearance="?...19 private TextView text; //显示拖动条当前值的文本框 20 private Button button_star; //评分按钮 21...// TODO Auto-generated method stub 61 int result = ratingbar.getProgress(); //获取进度