android java button_Android控件之Button

packagecom.skywang.control;importandroid.os.Bundle;importandroid.app.Activity;importandroid.view.Menu;importandroid.view.View;importandroid.view.View.OnClickListener;importandroid.widget.Button;importandroid.util.Log;importandroid.content.ContentResolver;importandroid.net.Uri;importandroid.provider.Settings;importandroid.provider.Settings.SettingNotFoundException;importandroid.view.WindowManager;public class ButtonTest extends Activity implementsView.OnClickListener{private static final String TAG = "SKYWANG";private Button mButtonPlus = null;private Button mButtonMinus = null;private int mBrightness = 100;private static final int MIN_BRIGHTNESS = 10;private static final int MAX_BRIGHTNESS = 255;private static final int STEP_LEN = 10;

@Overrideprotected voidonCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);

setContentView(R.layout.button_test);//保存原始的亮度值

mBrightness =getBrightness();

mButtonPlus=(Button)findViewById(R.id.button_plus);

mButtonPlus.setOnClickListener(this);

mButtonMinus=(Button)findViewById(R.id.button_minus);

mButtonMinus.setOnClickListener(newView.OnClickListener() {

@Overridepublic voidonClick(View v) {

Log.d(TAG,"click button minus");//减少亮度

minusBrightness();

}

});

}

@Overridepublic voidonClick(View v) {switch(v.getId()) {caseR.id.button_plus: {

Log.d(TAG,"click button plus");//增加亮度

plusBrightness();break;

}default:break;

}

}//button_reset的实现函数

public voidclickReset(View v) {

Log.d(TAG,"click reset");

setBrightness(mBrightness);

}/** 获取当前亮度值*/

private intgetBrightness() {int brightness = 0;try{

brightness=Settings.System.getInt(getContentResolver(),

Settings.System.SCREEN_BRIGHTNESS);

}catch(SettingNotFoundException snfe) {

}returnbrightness;

}/** 设置当前activity的亮度。*/

private void setBrightness(intbrightness) {

WindowManager.LayoutParams lp=getWindow().getAttributes();

lp.screenBrightness= Float.valueOf(brightness) * (1f /255f);

getWindow().setAttributes(lp);//若不保存亮度,退出该activity之后,亮度值会还原。

saveBrightness(getContentResolver(), brightness);

}/** 保存亮度值*/

private void saveBrightness(ContentResolver resolver, intbrightness) {

Uri uri=android.provider.Settings.System

.getUriFor("screen_brightness");

android.provider.Settings.System.putInt(resolver,"screen_brightness",

brightness);

resolver.notifyChange(uri,null);

}/** 增加亮度*/

private voidplusBrightness() {int brightness =getBrightness();if (brightness

brightness+=STEP_LEN;

brightness= brightness

setBrightness(brightness);

Log.d(TAG,"plus brightness : "+pre+"->"+brightness);

}else{

Log.d(TAG,"max Brightness!");

}

}/** 减少亮度*/

private voidminusBrightness() {int brightness =getBrightness();if (brightness >MIN_BRIGHTNESS) {int pre=brightness;

brightness-=STEP_LEN;

brightness= brightness>MIN_BRIGHTNESS ?brightness: MIN_BRIGHTNESS;

setBrightness(brightness);

Log.d(TAG,"minus brightness : "+pre+"->"+brightness);

}else{

Log.d(TAG,"min Brightness!");

}

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值