从零开始学android<SeekBar滑动组件.二十二.>
public SeekBar(Context context)
|
构造
|
创建SeekBar类的对象
|
public void setOnSeekBarChangeListener(
SeekBar.OnSeekBarChangeListener l)
|
普通
|
设置改变监听操作
|
public synchronized void setMax(int max)
|
普通
|
设置增长的最大值
|
<span style="font-size:18px;"><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".MainActivity" > <SeekBar android:max="100" android:progress="30" android:id="@+id/seekBar1" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" android:layout_marginTop="60dp" /> <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignLeft="@+id/seekBar1" android:layout_below="@+id/seekBar1" android:layout_marginLeft="28dp" android:layout_marginTop="32dp" android:text="seek1" android:textAppearance="?android:attr/textAppearanceMedium" /> <SeekBar android:id="@+id/seekBar2" android:max="100" android:secondaryProgress="60" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_below="@+id/textView1" android:layout_marginTop="67dp" /> <TextView android:id="@+id/textView2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignLeft="@+id/textView1" android:layout_below="@+id/seekBar2" android:layout_marginTop="28dp" android:text="seek2" android:textAppearance="?android:attr/textAppearanceMedium" /> </RelativeLayout> </span>
java文件
<span style="font-size:18px;">package com.example.seekbar; import android.app.Activity; import android.os.Bundle; import android.widget.SeekBar; import android.widget.SeekBar.OnSeekBarChangeListener; import android.widget.TextView; public class MainActivity extends Activity implements OnSeekBarChangeListener{ private TextView textView1,textView2; private SeekBar seekBar1,seekBar2; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); textView1=(TextView)this.findViewById(R.id.textView1); textView2=(TextView)this.findViewById(R.id.textView2); seekBar1=(SeekBar)this.findViewById(R.id.seekBar1); seekBar2=(SeekBar)this.findViewById(R.id.seekBar2); seekBar1.setOnSeekBarChangeListener(this); seekBar2.setOnSeekBarChangeListener(this); } @Override public void onProgressChanged(SeekBar seekBar, int position, boolean flag) { // TODO Auto-generated method stub if (seekBar.getId()==seekBar1.getId()) { textView1.setText("当前seekbar1刻度"+position); } else { textView2.setText("当前seekbar2刻度"+position); } } @Override public void onStartTrackingTouch(SeekBar seekBar) { // TODO Auto-generated method stub if (seekBar.getId()==seekBar1.getId()) { textView1.setText("开始滑动seek1"); } else { textView2.setText("开始滑动seek2"); } } @Override public void onStopTrackingTouch(SeekBar seekBar) { // TODO Auto-generated method stub if (seekBar.getId()==seekBar1.getId()) { textView1.setText("停止滑动seek1"); } else { textView2.setText("停止滑动seek2"); } } } </span>
效果图
<span style="font-size:18px;"><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".MainActivity" > <TextView android:id="@+id/textView1" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_alignParentTop="true" android:layout_centerHorizontal="true" android:layout_marginTop="24dp" android:text="调节手机亮度" /> <SeekBar android:max="100" android:id="@+id/seekBar1" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignLeft="@+id/textView1" android:layout_below="@+id/textView1" android:layout_marginTop="117dp" android:progress="50" /> </RelativeLayout></span>
JAVA文件
<span style="font-size:18px;">package com.example.seekbardemo; import android.app.Activity; import android.os.Bundle; import android.view.WindowManager; import android.widget.SeekBar; import android.widget.SeekBar.OnSeekBarChangeListener; public class MainActivity extends Activity implements OnSeekBarChangeListener { private SeekBar myseekBar; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); myseekBar=(SeekBar)this.findViewById(R.id.seekBar1); myseekBar.setOnSeekBarChangeListener(this); } @Override public void onProgressChanged(SeekBar seekBar, int position, boolean flag) { // TODO Auto-generated method stub } //调节亮度的方法 private void setScreenBrightness(float num) { WindowManager.LayoutParams layoutParams = getWindow().getAttributes(); // 取得window属性 layoutParams.screenBrightness = num; // num已经除以100 super.getWindow().setAttributes(layoutParams); // 0~1之间 } @Override public void onStartTrackingTouch(SeekBar arg0) { // TODO Auto-generated method stub } //在拖动结束是使用getProgress获得当前的Progress值来设置亮度 @Override public void onStopTrackingTouch(SeekBar seekBar) { // TODO Auto-generated method stub if (seekBar.getId()==myseekBar.getId()) { // 将progress除以100并转换为float类型 setScreenBrightness((float)seekBar.getProgress()/100); } } } </span>
效果图
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。