-
随笔提示文本:
使用百度等搜索引擎的时候,经常会看到随笔提示文本,例如输入百度,会出现百度,百度卫士,百度云盘等等,不止网页上有这个功能,Android自带这个功能AutoCompleteTextView,使用AutoCompleteTextView时,要将数据封装到ListAdapter,然后加入到随笔提示文本的下拉框中,下面定义布局文件main.xml:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/LinearLayout1" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" 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" > <AutoCompleteTextView android:id="@+id/autoCompleteTextView1" android:layout_width="fill_parent" android:layout_height="wrap_content" > <requestFocus /> </AutoCompleteTextView> </LinearLayout> 定义Activity文件,操作下拉框提示, : public class MainActivity extends Activity { private String[] data=new String[]{"ee","ee.java","ee科技公司","ee全世界","ee谁与争锋","ee.tj","ee233","ee43"}; private AutoCompleteTextView text=null; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); text=(AutoCompleteTextView)super.findViewById(R.id.autoCompleteTextView1); //将列表加入到适配器中 ArrayAdapter<String> adapter=new ArrayAdapter<String>(this,android.R.layout.simple_dropdown_item_1line,data); this.text.setAdapter(adapter);//添加适配器 } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } }
程序运行效果如图:
-
拖动条:首先我们先熟悉这个组件,SeekBar加textview显示拖动幅度,我们做一个随着拖动改变图片的功能,同时因为一个界面显示不完所有拖动信息,我们将文本改为滚动文本。
<!--EndFragment-->private SeekBar seekbar=null; private TextView text=null; private ImageView image=null; Private int[]pic=new int[]{R.drawable.a1,R.drawable.a2,R.drawable.a3,R.drawable.a4,R.drawable.a5 protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); this.seekbar=(SeekBar)super.findViewById(R.id.seekBar); this.image=(ImageView)super.findViewById(R.id.imageView1); this.seekbar.setMax(9);//设置最大的值,因为有9照片 this.text=(TextView)super.findViewById(R.id.textView); image.setImageResource(R.drawable.a8); text.setMovementMethod(ScrollingMovementMethod.getInstance());//定义滚动文本 seekbar.setOnSeekBarChangeListener(new Seekbar()); } 然后就可以在方法中加入图片改变信息即可: public void onProgressChanged(SeekBar arg0, int progress, boolean arg2) { //显示 text.append("开始拖动,当前值:"+progress+"\n"); }
效果如下:
<!--EndFragment-->
-
<!--EndFragment--> -
玩了这么多年手机你们一定知道手机的调亮度功能吧,拖动一个条条改变屏幕亮度想不想自己实现一个呢,这里用到了android.view.WindowManager;的screenbrightness方法来实现,首先说明一下亮度调节属性取值范围是0-1,
也就是说我们把拖动条设置最大拖动为100,那就要进行切换,具体切换如下:
<!--EndFragment-->
public class MainActivity extends Activity { private SeekBar seekbar=null; private TextView text=null; private ImageView image=null; private int[] pic=new int[]{R.drawable.a1,R.drawable.a2,R.drawable.a3,R.drawable.a4,R.drawable.a5 ,R.drawable.a6,R.drawable.a7,R.drawable.a8,R.drawable.a9}; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); this.seekbar=(SeekBar)super.findViewById(R.id.seekBar); this.image=(ImageView)super.findViewById(R.id.imageView1); this.seekbar.setMax(100);//设置最大的值 this.text=(TextView)super.findViewById(R.id.textView); image.setImageResource(R.drawable.a8); text.setMovementMethod(ScrollingMovementMethod.getInstance());//定义滚动文本 seekbar.setOnSeekBarChangeListener(new Seekbar()); } private class Seekbar implements OnSeekBarChangeListener{ @Override public void onProgressChanged(SeekBar arg0, int progress, boolean arg2) { //显示 text.append("开始拖动,当前值:"+progress+"\n"); } @Override public void onStartTrackingTouch(SeekBar seekbar) { // TODO Auto-generated method stub text.append("正在拖动,当前值:"+seekbar.getProgress()+"\n"); } @Override public void onStopTrackingTouch(SeekBar seekbar) { // TODO Auto-generated method stub text.append("停止拖动,当前值:"+seekbar.getProgress()+"\n"); MainActivity.this.setScreenBrightness((float)seekbar.getProgress()/100); } } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } public void setScreenBrightness(float progress) { // TODO Auto-generated method stub WindowManager.LayoutParams layoutparam=getWindow().getAttributes();//取得窗口属性 layoutparam.screenBrightness=progress;//因为1-100的拖动条,缩小100倍0,0.01,0.02....0.1,0.2....1 super.getWindow().setAttributes(layoutparam); } }
实现效果如下,当然手机上截图看不出什么太大效果,大家可以自己试试看
<!--EndFragment-->
<!--EndFragment-->
<!--EndFragment-->
相关推荐
综上所述,Android 开发中调节屏幕亮度涉及到了对`WindowManager.LayoutParams`和`Settings.System`类的使用。通过结合SeekBAr控件和Button事件,我们可以创建一个用户友好的亮度调节界面,同时支持对当前应用和全局...
本Demo主要展示了如何在Android Studio中实现屏幕亮度的动态调节功能,已经包含了必要的权限设置。以下是关于这个主题的详细知识点: 1. **权限设置**: 在AndroidManifest.xml文件中,你需要添加`...
在这个场景中,我们利用SeekBar来实现自定义调节系统亮度的功能。这一知识点涉及到Android UI设计、事件处理以及系统权限管理。 首先,我们需要了解SeekBar的基本用法。在XML布局文件中,可以创建一个SeekBar,并...
在Android开发中,调整系统屏幕亮度是一个常见的需求,它涉及到用户界面的舒适度以及设备的电源管理。本示例提供了一个简单的解决方案,包括系统屏幕亮度的自动适应和手动调节功能。 1. **系统屏幕亮度自适应** ...
在Android开发中,SeekBar是一种常用的用户界面组件,它允许用户通过滑动条来选择一个介于最小值和最大值之间的数值。默认情况下,SeekBar是水平排列的,但有时为了满足特定的设计需求,我们可能需要创建一个垂直...
android[Android实例] Android 竖着的SeekBar[Android实例] Android 竖着的SeekBar[Android实例] Android 竖着的SeekBar[Android实例] Android 竖着的SeekBar[Android实例] Android 竖着的SeekBar[Android实例] ...
在“Android调节屏幕亮度demo”中,关键组件是SeekBar。SeekBar是一个可拖动的进度条,用户可以通过拖动它来选择一个值。对于屏幕亮度,这个值通常会映射到0-255的亮度范围。下面是如何将SeekBar的进度事件与屏幕...
总之,自定义带提示的SeekBar涉及到对SeekBar事件的监听、自定义视图的设计以及可能的额外UI元素的添加。通过这些步骤,我们可以打造出既美观又实用的个性化SeekBar,满足用户在不同场景下的需求。
在Android SDK中,SeekBar的滑块运动是沿着X轴进行的,所以我们需要重写onDraw()方法以及滑动事件处理,使其沿Y轴运动。这涉及到对触摸事件的处理,包括ACTION_DOWN、ACTION_MOVE和ACTION_UP,以及计算新的滑动位置...
【SeekBar亮度调节与字体调节详解】 在Android应用开发中,我们常常需要实现用户对界面元素的自定义交互,比如调整屏幕亮度或字体大小。这里,我们将深入探讨如何仿照网易的实现方式,创建一个自定义的SeekBar来...
在Android开发中,SeekBar是一个非常常见的控件,用于让用户通过滑动来选择一个介于最小值和最大值之间的值。然而,系统默认的SeekBar是矩形的,有时为了追求更美观或者符合特定设计需求,开发者可能希望对其进行...
在Android开发中,SeekBar是一种常用的用户界面组件,它允许用户通过滑动条来选择一个介于最小值和最大值之间的数值。通常情况下,SeekBar是水平排列的,但有时根据设计需求,我们可能需要创建一个垂直方向的SeekBar...
在Android开发中,Seekbar是一种常见的用户界面组件,它允许用户通过滑动条来选择一个介于最小值和最大值之间的值。然而,标准的Seekbar只有一个方向的滑动,即从最小值向最大值。在某些场景下,如调节音量、压力等...
先来上个效果图: 当滑动时:数值显示,滑动停止时显示数字,使用FrameLayout结合SeekBar。 首先我们看看。 Layout: <?xml version=1.0 encoding=utf-... android:id=@+id/wrapper_seekbar_indicator android:la
在Android开发中,SeekBar是一个非常常用的控件,它允许用户通过滑动来选择一个介于最小值和最大值之间的数值。通常,SeekBar是水平布局的,但有时开发者可能需要创建一个竖向的SeekBar以适应特定的界面设计或用户...
CircularSeekBar是Android开发中一种独特的UI组件,它扩展了标准的SeekBar控件,为开发者提供了创建具有圆形、半圆形和椭圆形外观的可能性。这个库由Tankery开发,并在GitHub上开源,版本号为c03c551。在Android应用...
本篇文章将详细讲解如何在Android应用中使用SeekBar,并实现动态显示进度以及使进度指示器随SeekBar一起移动的效果。 1. **SeekBar的基本使用** SeekBar是Android SDK中的一个继承自ProgressBar的组件。首先,在...
通常,它被用来调节音量、亮度或者进度等。本篇文章将深入探讨如何在Android中自定义SeekBar,以满足更个性化的视觉效果和交互需求。 1. **自定义SeekBar的基本步骤** - 创建一个新的XML布局文件,在其中定义...
在Android开发中,SeekBar是一个非常常见的控件,它允许用户通过滑动来选择一个介于最小值和最大值之间的数值。然而,默认情况下,SeekBar是水平布局的,这可能不满足某些特殊界面设计的需求。在本实例中,我们将...
在Android开发中,SeekBar是一个非常常见的控件,它允许用户通过滑动来选择一个介于最小值和最大值之间的值。然而,默认的SeekBar是水平布局的,而在某些设计需求下,我们可能需要创建一个垂直方向的SeekBar。这篇...