本篇文章给大家分享的是有关如何在Android应用层中制作一个LED指示灯效果,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
实现方法如下:
public class LEDActivity extends Activity implements View.OnClickListener {
private static final String TAG = "LED";
Button mLedTest;
int mLedStatus = 0;
private final int mLedColorRed = 0xFFFF0000;
final byte[] LIGHT_ON = { '2', '5', '5' };
final byte[] LIGHT_OFF = { '0' };
private final int RED = 0;
private int color = RED;
String RED_LED_DEV = " /sys/class/leds/torch/brightness";
public void onCreate(Bundle paramBundle) {
super.onCreate(paramBundle);
setContentView(R.layout.led_test);
mLedTest = ((Button)findViewById(R.id.ledcolor));
mLedTest.setOnClickListener(this);
// setledlightcolor(color);
// mLedTest.setTextColor(mLedColorRed);
// mLedTest.setText("RED");
// mLedStatus = 1;
}
public void onClick(View v) {
Log.d("LEDActivity", "---onClick---mLedStatus=" + mLedStatus);
switch (v.getId()) {
case R.id.ledcolor:
if(mLedStatus == 0) {
mLedTest.setText("开");
mLedStatus = 1
}else if(mLedStatus == 1) {
mLedTest.setText("关");
mLedStatus = 0;
}
break;
}
}
@Override
public void finish() {
setledlightcolor(-1);
super.finish();
}
private void setledlightcolor(int color) {
logd("set:" + color);
boolean red = false;
switch (color) {
case RED:
red = true;
break;
default:
break;
}
try {
FileOutputStream foRed = new FileOutputStream(RED_LED_DEV);
Log.d(TAG, "foRed" + foRed);
fRed.write(red ? LIGHT_ON : LIGHT_OFF);
fRed.close();
} catch (Exception e) {
loge(e);
}
}
void logd(Object d) {
Log.d(TAG, "" + d);
}
void loge(Object e) {
Log.e(TAG, "" + e);
}
}
直接在xml中写一个Button,用来实现点击按钮,其实很简单,只是把源码的led指示灯的路径拿出来,用过输出流,将String转化,就能读出灯的状态,直接运行就可以实现该功能.
以上就是如何在Android应用层中制作一个LED指示灯效果,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注亿速云行业资讯频道。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。