ImageVerifierCode 换一换
格式:DOC , 页数:6 ,大小:583.50KB ,
资源ID:6814571      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.docduoduo.com/d-6814571.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(android开发培训实现手机手电筒.doc)为本站会员(ysd1539)主动上传,道客多多仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知道客多多(发送邮件至docduoduo@163.com或直接QQ联系客服),我们立即给予删除!

android开发培训实现手机手电筒.doc

1、Android 实现手机手电筒首先,android 我们来看一下这个程序的运行截图:手电筒:首先点击菜单键,我们会看到菜单中有两个选项,一个是选择背光颜色,另一个是离开按钮,当我们点击背光颜色之后,会出现如上所示的效果。 接着,我们点击蓝色背光,出现如下所示的画面:实现这个程序很简单,下面给出实现的代码: 主程序文件 package irdc.ex10_01; /* import 相关 class */ import android.app.Activity; import android.app.AlertDialog; import android.content.Context; imp

2、ort android.content.DialogInterface; import android.content.DialogInterface.OnClickListener; import android.os.Bundle; import android.os.PowerManager; import android.view.Menu; import android.view.MenuItem; import android.view.Window;import android.view.WindowManager; import android.widget.LinearLay

3、out;import android.widget.Toast; public class EX10_01 extends Activity /* * PowerManager 可以控制手机的 wakelock,使手机处于恒亮的状态 */ privatebooleanifLocked = false; private PowerManager.WakeLock mWakeLock; private PowerManager mPowerManager; private LinearLayout mLinearLayout; /* 独一无二的 menu 选项 identifier,用以识别事件

4、*/ static final private int M_CHOOSE = Menu.FIRST; static final private int M_EXIT = Menu.FIRST+1; /* 颜色菜单的颜色与文字数组 */ private int color=R.drawable.white,R.drawable.blue, R.drawable.pink,R.drawable.green, R.drawable.orange,R.drawable.yellow; private int text=R.string.str_white,R.string.str_blue, R.st

5、ring.str_pink,R.string.str_green, R.string.str_orange,R.string.str_yellow; Override public void onCreate(BundlesavedInstanceState) super.onCreate(savedInstanceState); /* 必须?setContentView 之前调用全屏显示 */ requestWindowFeature(Window.FEATURE_NO_TITLE); getWindow().setFlags (WindowManager.LayoutParams.FLAG

6、_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); setContentView(R.layout.main); /* 初始化 mLinearLayout */ mLinearLayout=(LinearLayout)findViewById(R.id.myLinearLayout1);/* 取得 PowerManager */ mPowerManager = (PowerManager) getSystemService(Context.POWER_SERVICE); /* 取得 WakeLock */ mWakeLock =

7、mPowerManager.newWakeLock ( PowerManager.SCREEN_BRIGHT_WAKE_LOCK, “BackLight“ ); WindowManager.LayoutParams lp = getWindow().getAttributes(); lp.screenBrightness = 1.0f; getWindow().setAttributes(lp); Override public boolean onCreateOptionsMenu(Menu menu) /* menu 组 ID */ int idGroup1 = 0; /* menuIte

8、mID */ int orderMenuItem1 = Menu.NONE; int orderMenuItem2 = Menu.NONE+1; /* 建立 menu */ menu.add(idGroup1,M_CHOOSE,orderMenuItem1,R.string.str_title); menu.add(idGroup1,M_EXIT,orderMenuItem2,R.string.str_exit); menu.setGroupCheckable(idGroup1, true, true); return super.onCreateOptionsMenu(menu); Over

9、ride public boolean onOptionsItemSelected(MenuItem item) switch(item.getItemId() case (M_CHOOSE): /* 弹出选择背后颜色的 AlertDialog */ new AlertDialog.Builder(EX10_01.this) .setTitle(getResources().getString(R.string.str_title).setAdapter(new MyAdapter(this,color,text),listener1) .setPositiveButton(“取消“, new

10、 DialogInterface.OnClickListener() public void onClick(DialogInterface dialog, int which) ) .show(); break; case (M_EXIT): /* 离开程序 */ this.finish(); break; return super.onOptionsItemSelected(item); /* 选择背后颜色的AlertDialog 的 OnClickListener */ OnClickListener listener1=new DialogInterface.OnClickListen

11、er() public void onClick(DialogInterface dialog,int which) /* 更改背景颜色 */ mLinearLayout.setBackgroundResource(colorwhich); /* Toast 显示设定的颜色 */ Toast.makeText(EX10_01.this, getResources().getString(textwhich), Toast.LENGTH_LONG).show(); ; Override protected void onResume() /* onResume()时调用 wakeLock() *

12、/ wakeLock(); super.onResume(); Override protected void onPause() /* onPause()时调用 wakeUnlock() */ wakeUnlock(); super.onPause(); /* 唤起 WakeLock 的 method */ private void wakeLock() if (!ifLocked) ifLocked = true; mWakeLock.acquire(); /* 释放 WakeLock 的 method */ private void wakeUnlock() if (ifLocked)

13、mWakeLock.release(); ifLocked = false; 2.Adapter 文件package irdc.ex10_01; /* import 相关 class */ import android.content.Context; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.BaseAdapter; import android.widget.TextView; /* 自定义的 Adapt

14、er,继承android.widget.BaseAdapter */ public class MyAdapter extends BaseAdapter private LayoutInflater mInflater; private int color; private int text; public MyAdapter(Context context,int _color,int _text) mInflater = LayoutInflater.from(context); color = _color; text = _text; /* 因继承 BaseAdapter,需重写以下

15、 method */ Override public int getCount() return text.length; Override public Object getItem(int position) return textposition; Override public long getItemId(int position) return position; Override public View getView(int position,View convertView,ViewGroup par) ViewHolder holder; if(convertView =

16、null) /* 使用自定义的 change_color 作为Layout */ convertView = mInflater.inflate(R.layout.change_color, null); /* 初始化holder 的 text */ holder = new ViewHolder(); holder.mText=(TextView)convertView.findViewById(R.id.myText); convertView.setTag(holder); else holder = (ViewHolder) convertView.getTag(); holder.mText.setText(textposition); holder.mText.setBackgroundResource(colorposition); return convertView; /* class ViewHolder */ private class ViewHolder TextView mText; 3.两个布局文件 3.1 主布局3.2 对话框布局4.我们需要在程序中加入如下的权限

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报