歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> Android代碼控制seekbar的樣式

Android代碼控制seekbar的樣式

日期:2017/3/1 10:21:03   编辑:Linux編程

Android代碼控制seekbar的樣式

package com.zte;

import android.app.Activity;
import android.graphics.Color;
import android.graphics.drawable.ClipDrawable;
import android.graphics.drawable.Drawable;
import android.graphics.drawable.GradientDrawable;
import android.graphics.drawable.LayerDrawable;
import android.os.Bundle;
import android.view.Gravity;
import android.widget.LinearLayout;
import android.widget.ProgressBar;
import android.widget.SeekBar;

public class SeekbaActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
SeekBar progressBar=(SeekBar)findViewById(R.id.seekBar1);
progressBar.setMax(100);
progressBar.setProgress(45);
progressBar.setSecondaryProgress(50);
progressBar.setThumb(getResources().getDrawable(R.drawable.handleview_layout_seek));
LayerDrawable progressDrawable = (LayerDrawable) progressBar
.getProgressDrawable();
Drawable[] outDrawables = new Drawable[progressDrawable
.getNumberOfLayers()];
for (int i = 0; i < progressDrawable.getNumberOfLayers(); i++) {
switch (progressDrawable.getId(i)) {
case android.R.id.background:// 設置進度條背景
outDrawables[i] = getResources().getDrawable(R.drawable.handleview_layout_seekbar_bg);
break;
case android.R.id.secondaryProgress:// 設置二級進度條
outDrawables[i] = getResources().getDrawable(R.drawable.handleview_layout_seekbar_bg);
break;
case android.R.id.progress:// 設置進度條
ClipDrawable oidDrawable = (ClipDrawable) progressDrawable
.getDrawable(i);
Drawable drawable=getResources().getDrawable(R.drawable.handleview_layout_seekbar_fg);
ClipDrawable proDrawable = new ClipDrawable(drawable,
Gravity.LEFT, ClipDrawable.HORIZONTAL);
proDrawable.setLevel(oidDrawable.getLevel());
outDrawables[i] = proDrawable;
break;
default:
break;
}
}
progressDrawable = new LayerDrawable(outDrawables);
progressBar.setProgressDrawable(progressDrawable);
}
}

更多Android相關信息見Android 專題頁面 http://www.linuxidc.com/topicnews.aspx?tid=11

Copyright © Linux教程網 All Rights Reserved