博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

09 2013 档案

摘要:根据WiFiManager可以判断WiFi状态,激活WiFi设置界面的Action为:android.provider.Settings.ACTION_WIFI_SETTINGS通过LocationManager可以判断GPS状态,激活GPS设置界面的Action为:android.provider.Settings.ACTION_LOCATION_SOURCE_SETTINGS示例代码如下: /** * 检查WiFi和GPS状态 */ private boolean checkWifiAndGPSStatus() { boolean result =... 阅读全文

posted @ 2013-09-30 16:44 mz_zyh 阅读(331) 评论(0) 推荐(0)

摘要:Android手机自SDK1.6开始支持内置Gesture Builder程序,提供了手写识别功能,让用户以类似涂鸦的方式绘制一个手写符号,使之对应一个字符串名称。本例通过GestureOverlayView控件来接收用户的手写1、手写笔画的生成保存:效果图:布局文件中GestureOverlayView: 默认是支持一笔,的添加android:gestureStrokeType="multiple"可以设置为支持多笔画java代码: private EditText et; private GestureOverlayView gov; private Ges... 阅读全文

posted @ 2013-09-29 13:42 mz_zyh 阅读(717) 评论(0) 推荐(0)

摘要:1、动态改变屏幕方向在Android中,通过setRequestedOrientation()方法更改屏幕方向,通过getRequestedOrientation()方法获取屏幕方向注意,要在AndroidManifest.xml文件中,添加android:screenOrientation="portrait",可添加在Activity下。方法一,根据getRequestedOrientation()判断当前屏幕显示方向,代码如下: switch (getRequestedOrientation()) { case Activity... 阅读全文

posted @ 2013-09-27 22:11 mz_zyh 阅读(565) 评论(0) 推荐(0)

摘要:通过getSystemService()获取TelephonyManager对象,再获取电信网络的相关信息通过android.provider.Settings.System.getString()获取手机相关的设置信息示例代码如下: private ArrayList titles; private ArrayList contents; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); se... 阅读全文

posted @ 2013-09-27 22:10 mz_zyh 阅读(252) 评论(0) 推荐(0)

摘要:1、获取正在后台运行的程序需要申请的权限: java代码: ActivityManager am = (ActivityManager) MainActivity.this .getSystemService(Context.ACTIVITY_SERVICE); List runningTasks = am.getRunningTasks(100); taskNames.clear(); for (RunningTaskInfo ... 阅读全文

posted @ 2013-09-27 22:08 mz_zyh 阅读(444) 评论(0) 推荐(0)

摘要:手机最主要的功能就是打电话,可以通过TelephonyManager提供的方法来获取SIM卡的状态和相关资料。通过getSystemService(Context.TELEPHONY_SERVICE)取得TelephonyManager对象。代码: /** * 获取SIM卡信息 */ private void loadTelephonyData() { //取得SIM卡状态 items.add("SIM卡状态"); switch (tm.getSimState()) { case TelephonyManager... 阅读全文

posted @ 2013-09-27 21:57 mz_zyh 阅读(266) 评论(0) 推荐(0)

摘要:WiFi的打开与关闭WiFiManager状态常数及意义WifiManager状态常数意义WifiManager.WIFI_STATE_ENABLEDwifi已经打开WifiManager.WIFI_STATE_ENABLINGwifi打开中WifiManager.WIFI_STATE_DISABLINGwifi关闭中WifiManager.WIFI_STATE_DISABLEDwifi已经关闭WifiManager.WIFI_STATE_UNKNOWN未知的Wifi状态通过WiFiManager打开WiFi,mWiFiManager.setWifiEnabled(true)的状态变化过程:1 阅读全文

posted @ 2013-09-27 21:56 mz_zyh 阅读(553) 评论(0) 推荐(0)

摘要:在代码中调用clearWallpaper()方法可以清除已设置的桌面背景,还原到系统默认背景必须要在AndroidManifest.xml文件中设置权限permission代码中设置桌面背景,通过setWallpaper()方法即可,同样需要上述权限代码中取得桌面背景图片,可以通过ContextWrapper对象的getWallpaper()方法和peekWallpaper()方法,两者的区别是:getWallpaper()返回有效的Drawable。当手机没有设定桌面时,会返回系统默认的桌面,而peekWallpaper()则会返回null,常用在设计替换手机桌面程序时使用。 阅读全文

posted @ 2013-09-27 21:55 mz_zyh 阅读(212) 评论(0) 推荐(0)

摘要:手机上打开文件代码: /** * 在手机上打开文件的方法 * * @param file */ private void openFile(File file) { Intent intent = new Intent(); intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); intent.setAction(Intent.ACTION_VIEW); // 调用getMIMEType方法获取文件的MimeType String type... 阅读全文

posted @ 2013-09-27 21:54 mz_zyh 阅读(429) 评论(0) 推荐(0)

摘要:设置手机的震动事件,可以通过Vibrator对象。Vibrator对象的获取:vibrator = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE);震动的设置:vibrator.vibrate(new long[] { 100, 10, 100, 1000 }, -1);long数组为震动打开和关闭的间隔时间,第一个元素为等待时间,其后面都是打开关闭的交替时间第二个参数:震动模式,-1表示只震动一次,0表示循环震动 阅读全文

posted @ 2013-09-27 21:53 mz_zyh 阅读(167) 评论(0) 推荐(0)

摘要:拨打电话有两个关键:1、在AndroidManifest.xml中添加用户权限, 2、通过自定义Intent对象,带入“ACTION_CALL”这个关键(ACTION),以及通过Uri.parse()方法将用户输入的电话号码(Data)带入,最后以startActivity()方法完成直接拨打。示例代码: Intent intent = new Intent(); intent.setAction(Intent.ACTION_CALL); intent.setData(Uri.pa... 阅读全文

posted @ 2013-09-27 21:52 mz_zyh 阅读(308) 评论(0) 推荐(0)

摘要:在Android里,可以通过Linkify实现链接,Linkify可以让系统动态获取并迅速判断内容是否符合某种规则。如,电话号码,点击后会跳转到电话拨号界面。其实是更加正则规则进行判断的。在程序中使用示例如下: Linkify.addLinks(et, Linkify.WEB_URLS | Linkify.EMAIL_ADDRESSES | Linkify.PHONE_NUMBERS);将要匹配的TextView或其子类和规则加入即可,不过,应该是先有内容,再设置的,即上述代码et里面是应该已经有文字内容了的,否则,正... 阅读全文

posted @ 2013-09-27 21:49 mz_zyh 阅读(251) 评论(0) 推荐(0)

摘要:范例,运用ViewGroup、Scroller、VelocityTracker所创建的MyViewGroup类。ViewGroup与Scroller类为建置View Layout与移动View的相关类,VelocityTracker则是用以追踪User在触控屏幕时的滑动速度。关于MyViewGroup类:有两个构造方法:1、在程序里配置之用;2、在Layout里配置ViewGroup时指派属性只用。onInterceptTouchEvent()方法可以拦截触摸事件MyViewGroup类的代码如下:public class MyViewGroup extends ViewGroup { ... 阅读全文

posted @ 2013-09-27 21:48 mz_zyh 阅读(467) 评论(0) 推荐(0)

摘要:EditText已带有选取字词的功能,所选取的文字可以通过InputConnection.setComposingRegion()方法,将User选取的文字取出加上底线。EditText可以通过getSelectedStart()和getSelectedEnd()两个方法获取选择用户选择文字的起始字符与终点字符InputConnection.getSelectedText(0),取得EditText中被选取的字符,没有则返回nullInputConnection.setComposingText(String,int)将指定参数替换选择的文字,第一个参数为用来替换的字符串,而第二参数为替换后光 阅读全文

posted @ 2013-09-27 21:47 mz_zyh 阅读(2021) 评论(0) 推荐(0)

摘要:SearchManager是Android提供搜索的API使用SearchManager对象,必须先在AndroidManifest.xml文件里面编写,使之可以过滤“android.intent.action.SEARCH”广播信息,再在应用程序中建立SearchManager对象。在AndroidManifest.xml文件中的配置: ... 阅读全文

posted @ 2013-09-27 21:43 mz_zyh 阅读(1176) 评论(0) 推荐(0)

摘要:AppWidgetProvider对象可以实现桌面WidgetAppWidget也有生命周期,当重写AppWidgetProvider的onUpdate()方法后,就会进入第一次AppWidget的更新周期中,然而它在AndroidManifest.xml里是定义在TAG中,所以当手机对操作系统广播"android.appwidget.action.APPWIDGET_UPDATE"信息的同时,也会被AppWidgetProvider获取,又由于它并非服务,所以在失去焦点时,虽然依旧在后台运行,但不会进行画面的更新。一般在onUpdate方法里面在启动一个服务,再在服务里面 阅读全文

posted @ 2013-09-27 21:41 mz_zyh 阅读(263) 评论(0) 推荐(0)

摘要:SlidingDrawer控件,实现抽屉效果。SlidingDrawer配置采用了水平展开或垂直展开两种(android:orientation)方式,在XML里必须指定其使用的android:handle与android:content,前者委托要展开的图片(Layout配置,即把手),后者为委托要展开的LayoutContent。 在代码中,通过该控件的setOnDrawerOpenListener()与setOnDrawerCloseListener()方法监控抽屉的打开和关闭 sd.setOnDrawerOpe... 阅读全文

posted @ 2013-09-27 21:39 mz_zyh 阅读(232) 评论(0) 推荐(0)

摘要:ListActivity相对于Activity,可以实现以下方法:getListAdapter()取得目前列表项目的AdaptergetListView()取得目前列表的ViewgetSelectedItemId()取的 目前Keypad所选择的Item索引值getSelectedItemPosition()取的目前Keypad所选择的Item索引值onContentChanged()ListActivity列表内容更动事件onListItemClick(ListView,View,int,long)User在列表项目单击触发事件onRestoreInstanceState(Bundle)当还 阅读全文

posted @ 2013-09-27 21:36 mz_zyh 阅读(190) 评论(0) 推荐(0)

摘要:1、BitmapFactory类,该类是Android API提供工具类,可以将将图片文件转换为bitmap对象2、图片的放大缩小,通过Martix对象的postScale()方法实现手机上缩放图片的功能。 // 产生放大后的Bitmap对象 Matrix matrix = new Matrix(); matrix.postScale(scaleWidth, scaleHeight); Bitmap createBitmap = Bitmap.createBitmap(bit... 阅读全文

posted @ 2013-09-16 16:43 mz_zyh 阅读(137) 评论(0) 推荐(0)

摘要:模拟小时钟控件:AnalogClock数字小时钟控件:DigitalClock以上两个都直接在布局文件里面放置即可动态输入日期和时间:DatePicker控件可以动态设置日期,用于用户更改年月日,DatePicker控件设置监听必须通过init()方法,传入默认初始值。 ((DatePicker) findViewById(R.id.dp)).init(mYear, mMonth, mDay, new OnDateChangedListener() { @Override ... 阅读全文

posted @ 2013-09-16 16:42 mz_zyh 阅读(161) 评论(0) 推荐(0)

摘要:1、AutoCompleteTextView控件可以实现自动提示功能 通过预先设置好的字符串数组放入ArrayAdapter中,最后利用AutoCompleteTextView.setAdapter方法就可以让该控件具有自动提示功能。 只要是下拉菜单的项目,都必须使用ArrayAdapter对象2、MultiAutoCompleteTextView控件,继承自CompleteTextView,它可以在输入框一直增加新的选择值,必须要setTokenizer,否则会出现错误。例子: ((AutoCompleteTextView) findViewById(R.id.actv))... 阅读全文

posted @ 2013-09-16 16:39 mz_zyh 阅读(152) 评论(0) 推荐(0)

摘要:Spinner是android自带的下拉菜单控件,可以自定义,关键方法为其适配器Adapter方法setDropDownViewResource()将定义好的显示风格layout.xml作为参数传入 tv = (TextView) findViewById(R.id.tv); ArrayAdapter adapter = new ArrayAdapter(this,android.R.layout.simple_spinner_item, strs); spinner = (Spinner) findViewById(R.id.spinner); ... 阅读全文

posted @ 2013-09-16 16:37 mz_zyh 阅读(203) 评论(0) 推荐(0)

摘要:ViewFlipper控件是系统自带控件,可以直接在布局文件里面添加,需要滑动的内容写在ViewFlipper里面,如下: 在代码里面,通过showNext()方法和showPrevious()方法来实现显示下一个或上一个layout布局 @Override public boolean onTouchEvent(MotionEvent event) { switch (event.g... 阅读全文

posted @ 2013-09-16 16:32 mz_zyh 阅读(293) 评论(0) 推荐(0)

摘要:可以通过Intent调用其他程序的功能,不过,必须知道对方应有的包名和需激活的类名方法为Intent.setClassName(String packageName, String className)注意:className应该为全名,即包名+类名 try { Intent intent = new Intent(); intent.setClassName("com.example.ex_3_25_otheractivity", "... 阅读全文

posted @ 2013-09-16 16:31 mz_zyh 阅读(167) 评论(0) 推荐(0)

摘要:获取手机系统的版本:android.os.Build.Version.SDK_INT获取应用程序的目标版本:getApplicationInfo().targetSdkVersion没有找到获取程序允许运行的最低系统版本号的方法 阅读全文

posted @ 2013-09-16 16:30 mz_zyh 阅读(169) 评论(0) 推荐(0)

摘要:设置资源文件(/res/drawable与/res/values),可以是软件根据不同的Locale显示对应的内容例子:/res/drawable-en/flag.png:英文语系下,程序内所使用的图片。/res/drawable-ja/flag.png:日文语系下,程序内所使用的图片。/res/values-en/strings:英文语系下,程序内所使用的字符串。/res/values-ja/strings:英文语系下,程序内所使用的字符串。 阅读全文

posted @ 2013-09-16 16:29 mz_zyh 阅读(148) 评论(0) 推荐(0)

摘要:通过CheckBox.setOnCheckedChangeListener()方法来设置EditText显示密码事件EditText的setTransformationMethod()方法是用以设置其显示的字符类型。HideReturnsTransformationMethod.getInstance():正常显示所输入的密码字符;PasswordTransformationMethod.getinstance():隐藏输入的字符,恢复为密码输入状态。 @Override protected void onCreate(Bundle savedInstanceState) { ... 阅读全文

posted @ 2013-09-16 16:28 mz_zyh 阅读(243) 评论(0) 推荐(0)

摘要:Theme可以用来整合Style制定Theme设置文件安排于Style.xml预加载的主题样式Style.xml文件中预设置的主题范例: 可以在Activity中通过setTheme方法来设置自定义的主题 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setTheme(R.style.Theme_Translucen... 阅读全文

posted @ 2013-09-16 16:27 mz_zyh 阅读(248) 评论(0) 推荐(0)

摘要:1、只要巧妙地运用改变Activity Layout 这个技巧,就可以做出手机页面转换的效果。 利用setContentView来置换页面还有一个优点,即所有程序里的变量皆存在相同的状态,无论是类成员变量、类函数等,皆可以在一个Activity的状态中直接获取,并没有参数传递的问题。2、如果要转换页面并不单单只是后台、颜色或文字内容不同,而是Activity的置换,那么就不能通过改变Layout来实现了,得通过Intent来激活另一个Activity 在AndroidManifest.xml文件中,意图过滤器中拥有的activity,在程序运行时会启动,如果xml中没有任何一个Activi.. 阅读全文

posted @ 2013-09-16 16:21 mz_zyh 阅读(237) 评论(0) 推荐(0)

摘要:获取手机屏幕大小,关键是DisplayMetrics类的应用 /** * 必须引用android.util.DisplayMetrics */ DisplayMetrics displayMetrics = new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics(displayMetrics); ((TextView) findViewById(R.id.tv)).setText("手机屏幕分辨率为:" ... 阅读全文

posted @ 2013-09-16 16:13 mz_zyh 阅读(168) 评论(0) 推荐(0)

摘要:1、TextView属性: 在Xml文件里面,给TextView控件添加android:autoLink="all",那么在TextView内容中如果有http://,则可以显示出来,点击会打开浏览器访问该网址。2、虽然在values/strings.xml里定义了默认的字符串常数,但若遭遇如“?”、“'”、“\”等符号时,必须使用转义字符3、关于Drawable颜色常数及后台色的引用 在res/valuse下建立color.xml文件,文件内可以定义颜色作为引用, #FFFFFFFF 4、关于Style样式的定义 可以在valuse目录下建立styles.xml文 阅读全文

posted @ 2013-09-16 16:10 mz_zyh 阅读(385) 评论(0) 推荐(1)