AndroidのSeekBarの使い方紹介

2773 ワード

ドラッグバー:
レイアウトファイル:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/gridView"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >

    <EditText
        android:id="@+id/font"
        android:layout_width="match_parent"
        android:layout_height="300dp"
        android:ems="10"
        android:lines="5"
        android:text="    ,   ..."
        android:inputType="textMultiLine" >

        <requestFocus />
    </EditText>
    
    <SeekBar 
        android:id="@+id/seekBar"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:max="100"
        android:scrollbarStyle="insideOverlay"
        android:progress="1"
        />

</LinearLayout>
メインプログラムの入り口:
package com.example.advancedview;

import android.app.Activity;
import android.os.Bundle;
import android.widget.EditText;
import android.widget.SeekBar;
import android.widget.Toast;
import android.widget.SeekBar.OnSeekBarChangeListener;

/**
 * SeekBar     ,           
 * @author Administrator
 *
 */
public class SeekBarActivity extends Activity {

	//    
	private SeekBar seekBar;
	private EditText font;
	
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.seek_bar_layout);
		
		font = (EditText) findViewById(R.id.font);
		seekBar = (SeekBar) findViewById(R.id.seekBar);
		
		seekBar.setOnSeekBarChangeListener(seekListerner);
		
	}
	
	//      
	private OnSeekBarChangeListener seekListerner = new OnSeekBarChangeListener() {
		
		//        
		public void onStopTrackingTouch(SeekBar seekBar) {
			
			Toast.makeText(SeekBarActivity.this, "   :"+seekBar.getProgress(), 1000).show();
		}
		
		//     
		public void onStartTrackingTouch(SeekBar seekBar) {
			
			Toast.makeText(SeekBarActivity.this, "   :"+seekBar.getProgress(), 1000).show();
		}
		
		//    
		public void onProgressChanged(SeekBar seekBar, int progress,
				boolean fromUser) {
			
			font.setTextSize(progress); //        
		}
	};
}