新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > android自定義seekBar

        android自定義seekBar

        作者: 時間:2016-09-12 來源:網絡 收藏

        Android中自定義SeekBar的背景顏色,進度條顏色,以及滑塊的圖片

        本文引用地址:http://www.104case.com/article/201609/305005.htm

        在Android中的控件種類已經足夠我們使用,但是有時候大家需要根據美工的設計來改變一些控件的顏色,式樣,以及背景圖片

        最近正好有這方面的需要,用了很久時間,找到了改變基本顏色以及圖片的方法。

        下面以SeekBar為例,為大家描述一下我的做法

        首先在layout文件夾中的main.xml內容如下

        android:layout_height=fill_parent

        android:layout_height=wrap_content android:max=100

        android:progress=50 android:progressDrawable=@drawable/seekbar_img

        android:thumb=@drawable/thumb />

        很簡單,只有一個SeekBar控件,注意它的 android:progressDrawable=@drawable/seekbar_img

        以及 android:thumb=@drawable/thumb

        它們分別對應的是進度條的圖片以及拖動滑塊的圖片,這里的圖片也可以是我們自定義的drawable中的xml文件,可以理解成這兩個屬性應該如何顯示的意思,而 @drawable/seekbar_img和@drawable/thumb它們分別對應著 drawable 文件夾中的文件seekbar_img.xml和thumb.xml,它們表示著如何去顯示進度條與滑塊

        第一步:定義Activity

        在main.xml文件中加上一個SeekBar和一個TextView

        android:orientation=vertical

        android:layout_width=fill_parent

        android:layout_height=fill_parent

        >

        android:id=@+id/seekbar

        android:layout_width=fill_parent

        android:layout_height=wrap_content

        android:progressDrawable=@drawable/seekbar_img

        android:thumb=@drawable/thumb

        >

        android:id=@+id/edit

        android:layout_width=fill_parent

        android:layout_height=wrap_content

        >

        第二步:編寫Activity

        package com.gufengxiachen.counter;

        import android.app.Activity;

        import android.os.Bundle;

        import android.widget.SeekBar;

        import android.widget.SeekBar.OnSeekBarChangeListener;

        import android.widget.TextView;

        public class CounterActivity extends Activity {

        //定義一個SeekBar和一個TextView

        private SeekBar seekBar;

        private TextView textView;

        @Override

        public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.main);

        //根據ID值取得SeekBar對象

        seekBar = (SeekBar)findViewById(R.id.seekbar);

        seekBar.setMax(100);

        //為SeekBar設置監聽器(這里使用匿名內部類)

        seekBar.setOnSeekBarChangeListener(new OnSeekBarChangeListener(){

        //復寫OnSeeBarChangeListener的三個方法

        //第一個時OnStartTrackingTouch,在進度開始改變時執行

        @Override

        public void onStartTrackingTouch(SeekBar seekBar) {

        // TODO Auto-generated method stub

        }

        //第二個方法onProgressChanged是當進度發生改變時執行

        @Override

        public void onProgressChanged(SeekBar seekBar, int progress,

        boolean fromUser) {

        // TODO Auto-generated method stub

        textView = (TextView)findViewById(R.id.edit);

        int i= seekBar.getProgress();

        textView.setText(+i);

        }

        //第三個是onStopTrackingTouch,在停止拖動時執行

        @Override

        public void onStopTrackingTouch(SeekBar seekBar) {

        // TODO Auto-generated method stub

        textView = (TextView)findViewById(R.id.edit);

        int i= seekBar.getProgress();

        textView.setText(+i);

        }

        });

        }

        }



        關鍵詞:

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 运城市| 东港市| 大足县| 鹰潭市| 长垣县| 柏乡县| 武胜县| 东明县| 游戏| 梁山县| 万州区| 银川市| 永年县| 辽中县| 彰武县| 门头沟区| 河北省| 行唐县| 星座| 泗阳县| 本溪市| 华亭县| 什邡市| 梅州市| 石城县| 河东区| 永兴县| 闻喜县| 台前县| 沿河| 砀山县| 当雄县| 赤峰市| 长乐市| 水富县| 花莲市| 长海县| 高碑店市| 乐平市| 南阳市| 永安市|