重要提示:在使用自定义滑块的时候,seekbar内必须添加一句
android:splitTrack="false"
否则添加滑块后,滑块与滑动条之间会有间隙
前文提要:本文只是为了在Dialog中设置滑块的大小(项目中需要在dialog中加一个亮度控制),seekbar的设置网上很多了,百度就可以了。
主要代码:
//设置滑块大小
seekBar = (SeekBar)view. findViewById(R.id.seek_bar);
Bitmap Bmp = BitmapFactory. decodeResource(
context.getResources(), R.drawable.video_set_seekbar_icon);//设置你的图片
Bitmap bmp = Bmp.createScaledBitmap(Bmp, 190, 190, true);//设置大小
BitmapDrawable d = new BitmapDrawable(bmp);
Bitmap bitmap = d.getBitmap();
if (bitmap.getDensity() == Bitmap.DENSITY_NONE) {
d.setTargetDensity(context.getResources().getDisplayMetrics());
}
Drawable drawable = d;
seekBar.setThumb(drawable);//将你设置好的滑块加入
如上文所示:找到你的seekbar之后,在bitmap内设置你的滑块图片。然后设置你的滑块大小,最后通过setThumb添加你设置好的滑块
最后:这个方法是网上找的,但是其余地方的几乎都是一模一样的,无法在dialog中使用(毕竟我才疏学浅),所以单独提出来写一下,主要是为了记录,或许也会为遇到同样问题的人提供一个方法。