due*_*ssi 9 android android-widget
有没有办法自定义MediaController?我需要改变按钮的样式,SeekBar等.
你可以做的是递归MediaController的视图层次结构并以编程方式设置SeekBar的drawable:
private void styleMediaController(View view) {
if (view instanceof MediaController) {
MediaController v = (MediaController) view;
for(int i = 0; i < v.getChildCount(); i++) {
styleMediaController(v.getChildAt(i));
}
} else
if (view instanceof LinearLayout) {
LinearLayout ll = (LinearLayout) view;
for(int i = 0; i < ll.getChildCount(); i++) {
styleMediaController(ll.getChildAt(i));
}
} else if (view instanceof SeekBar) {
((SeekBar) view).setProgressDrawable(getResources().getDrawable(R.drawable.progressbar));
((SeekBar) view).setThumb(getResources().getDrawable(R.drawable.progresshandle));
}
}
Run Code Online (Sandbox Code Playgroud)
然后,打电话
styleMediaController(myMC);
Run Code Online (Sandbox Code Playgroud)
该方法makeControllerView旨在被重写,以便您可以提供自己的视图。不幸的是,它目前是隐藏的。
您可能想要获取 MediaController 的源代码并重新实现它,或者将隐藏的方法复制并粘贴到子类中,以便您可以自定义它。
| 归档时间: |
|
| 查看次数: |
10753 次 |
| 最近记录: |