`

Android有用的程序片段

阅读更多

文章来源:http://www.hxstrive.com/article/39.htm

 

【webview加载本地html、本apk内html和远程URL】

// 打开本包内asset目录下的index.html文件

wView.loadUrl("file:///android_asset/index.html ");

// 打开本地sd卡内的index.html文件

wView.loadUrl("content://com.android.htmlfileprovider/sdcard/index.html");

// 打开指定URL的html文件

wView.loadUrl("http://m.oschina.net");

 

【获取屏幕的分辨率】

// 通过WindowManager获取  

DisplayMetrics dm = new DisplayMetrics();  

getWindowManager().getDefaultDisplay().getMetrics(dm);  

System.out.println("heigth : " + dm.heightPixels);  

System.out.println("width : " + dm.widthPixels);  

 

// 通过Resources获取          

DisplayMetrics dm2 = getResources().getDisplayMetrics();  

System.out.println("heigth2 : " + dm2.heightPixels);  

System.out.println("width2 : " + dm2.widthPixels);    

 

// 获取屏幕的默认分辨率  

Display display = getWindowManager().getDefaultDisplay();  

System.out.println("width-display :" + display.getWidth());  

System.out.println("heigth-display :" + display.getHeight());

 

// 通过WindowManager获取

DisplayMetrics dm = new DisplayMetrics();

getWindowManager().getDefaultDisplay().getMetrics(dm);

System.out.println("heigth : " + dm.heightPixels);

System.out.println("width : " + dm.widthPixels);

 

// 通过Resources获取 

DisplayMetrics dm2 = getResources().getDisplayMetrics();

System.out.println("heigth2 : " + dm2.heightPixels);

System.out.println("width2 : " + dm2.widthPixels);

 

// 获取屏幕的默认分辨率

Display display = getWindowManager().getDefaultDisplay();

System.out.println("width-display :" + display.getWidth());

System.out.println("heigth-display :" + display.getHeight());

 

【去掉屏幕标题及全屏显示】

// 去掉标题  

requestWindowFeature(Window.FEATURE_NO_TITLE);

 

// 设置全屏

getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,  WindowManager.LayoutParams.FLAG_FULLSCREEN);

 

// 去掉标题

requestWindowFeature(Window.FEATURE_NO_TITLE);

 

// 设置全屏

getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);

 

【设置屏幕的方向】

在Manifest.xml文件中配置Activity的属性

<activity android:name=".AnimateActivity" android:label="@string/app_name" 

    android:screenOrientation="landscape"><!-- landscape 横屏portrait 竖屏 --> 

    <intent-filter> 

        <action android:name="android.intent.action.MAIN" /> 

        <category android:name="android.intent.category.LAUNCHER" /> 

    </intent-filter> 

</activity>

在程序中控制,一般在Activity中的onCreate、onDestroy方法中控制,因为在屏幕方向发生变化时,系统会重新启动Activity。所以需要再Activity销毁前保存相关数据,方便在下次onCreate方法中重新加载,并更新屏幕的布局

 

public void onCreate(Bundle savedInstanceState) {  

    //强制横屏  

    setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);  

    // TODO 更新屏幕布局  

}

 

public void onDestroy() {  

    if(getRequestedOrientation() ==  ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE) { 

        // 保存数据  

    }else if(getRequestedOrientation() ==  ActivityInfo.SCREEN_ORIENTATION_PORTRAIT) { 

        // 保存数据  

    }  

}

 

【获取存储卡路径和空间使用情况】

// 获取存储卡路径

File sdcardDir = Environment.getExternalStorageDirectory();

 

// StatFs看文件系统空间使用情况 

File sdcardDir = Environment.getExternalStorageDirectory();

StatFs statFs = new StatFs(sdcardDir.getPath());

 

// Block 的 size 

File sdcardDir = Environment.getExternalStorageDirectory();

StatFs statFs = new StatFs(sdcardDir.getPath());

Long blockSize = statFs.getBlockSize();

 

// 总 Block 数量 

File sdcardDir = Environment.getExternalStorageDirectory();

StatFs statFs = new StatFs(sdcardDir.getPath());

Long totalBlocks = statFs.getBlockCount();

 

// 已使用的 Block 数量 

File sdcardDir = Environment.getExternalStorageDirectory();

StatFs statFs = new StatFs(sdcardDir.getPath());

Long availableBlocks = statFs.getAvailableBlocks();

 

【控制Android的软键盘】

InputMethodManager inputMethodManager=(InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);

inputMethodManager.toggleSoftInput(0, InputMethodManager.HIDE_NOT_ALWAYS);

 

【获取手机号码】

记得在manifest file中添加权限

<uses-permission  android:name="android.permission.READ_PHONE_STATE" />

 

// 创建电话管理与手机建立连接

TelephonyManager tm = (TelephonyManager)activity.getSystemService(Context.TELEPHONY_SERVICE);

 

// 获取手机号码

String phoneId = tm.getLine1Number();

 

分享到:
评论

相关推荐

    android有用代码片段.

    以上就是一些常用的Android代码片段,它们涵盖了获取系统信息、管理应用数据和处理用户交互等多个方面,对于日常开发工作来说非常实用。在实际项目中,可以根据需求灵活组合和使用这些代码,以提高开发效率和代码...

    Android应用中片段组件的污点分析.pdf

    【Android应用中片段组件的污点分析】 在移动设备,特别是Android平台的广泛应用背景下,用户隐私数据的安全问题日益凸显。由于手机和平板电脑通常存储了大量的个人信息,如联系人信息、位置数据和多媒体文件等,...

    一些常用的android 代码片段

    接下来,我们关注一下Android程序的权限管理。在开发过程中,正确设置`uses-permission`非常重要,因为这直接影响到应用的功能能否正常运行。以下是几个常见的权限示例: 1. `android.permission.ACCESS_CHECKIN_...

    Android 的应用程序结构分析:HelloActivity

    ### Android的应用程序结构分析:HelloActivity #### 一、引言 在Android开发领域,理解一个应用程序的基本结构至关重要。本文将以“HelloActivity”为例,详细剖析Android应用程序的组成及其内部结构,帮助读者...

    《Android程序设计经典教程》pdf

    《Android程序设计经典教程》是一本深入探讨Android应用程序开发的权威指南,对于想要掌握Android开发技术的初学者和专业人士来说,都是不可多得的资源。这本书涵盖了从基础概念到高级特性的全面内容,旨在帮助读者...

    Android应用程序源代码

    12. **Fragment**:Fragment是Android 3.0引入的一个组件,可以嵌入在Activity中,允许开发者创建可重用的界面片段。这对于平板设备和大屏幕应用的设计特别有用。 13. **异步处理**:为了保证用户体验,耗时操作...

    Android程序设计基础_光盘源码

    在Android程序设计基础中,SDK(Software Development Kit)是开发者构建Android应用的核心工具集,它包含了开发、调试、运行Android应用程序所需的各种库、工具和API文档。本资源"Android程序设计基础_光盘源码...

    我的第一个Android程序

    【标题】"我的第一个Android程序"揭示了初学者在Android应用开发中的基本步骤。这个标题意味着我们将探讨如何从零开始创建一个简单的Android应用程序,通常这是一个基础教程,旨在帮助新手理解Android Studio集成...

    android管理应用程序相关代码及资源路径

    在Android操作系统中,管理应用程序(Manage Applications)是一个重要的功能,它允许用户查看、管理以及清理设备上安装的应用程序。这个功能对于了解应用的资源占用、权限管理以及优化设备性能至关重要。下面将详细...

    Android Tab测试小程序

    Fragment是Android中可重用的UI片段,适合在Tab之间共享数据和逻辑。在TabTest项目中,每个Tab可能对应一个Fragment,包含了不同的视图和交互逻辑。 接着,我们可以通过TabHost的setup()方法初始化TabHost,并添加...

    Android 三维程序设计-基于OpenGL ES的图形应用程序设计

    Android 三维程序设计:基于OpenGL ES的图形应用程序设计,是一本专门为从事图形研究和设计的技术人员量身定做的教材。OpenGL ES(Open Graphics Library for Embedded Systems)是OpenGL的一个子集,专门为移动设备...

    android开发资料\Android很有用的代码片段

    根据提供的文件信息,我们可以归纳出一系列与Android开发相关的有用代码片段及知识点。下面将对这些代码片段进行详细的解析和说明。 ### SD卡状态检测 **代码片段:** ```java String status = Environment....

    Android应用程序开发

    8. **扩展实验**:随着技能的提升,开发者可以尝试更复杂的实验,如使用Fragment管理多个屏幕片段,实现自定义View,或者利用Android的多进程特性提高应用性能。此外,还可以探索Android的最新特性和框架,如Jetpack...

    15个Android很有用的代码片段.pdf

    根据给定的文件信息,以下是对15个Android很有用的代码片段的详细解析与扩展,旨在深入理解每个代码片段背后的原理与应用: ### 1. 检查是否有存储卡插入 ```java String status = Environment....

    Faker提供了假的数据到你的Android应用程序.zip

    标题中的"Faker提供了假的数据到你的Android应用程序"指的是在Android开发中使用Faker库来生成模拟数据。Faker是一个流行的数据生成工具,它允许开发者在测试或者开发阶段填充数据库、创建示例对象或生成随机数据,...

    Android-用于Android应用程序的外部记录器库

    标题 "Android-用于Android应用程序的外部记录器库" 提供了一个关键信息,即这是一个专为Android应用程序设计的日志记录库。日志记录是软件开发中的重要环节,它帮助开发者跟踪和诊断应用程序的行为,尤其是在出现...

    Android大作业 课程设计报告绘图程序

    这一环节是整个报告的重要组成部分之一,它展示了实现功能的核心代码片段以及应用程序的实际运行效果。通过这种方式,读者可以直观地了解程序的工作原理及其实际表现。 ### 二、需求分析 在需求分析阶段,开发者...

    Android三维程序设计-基于OpenGL ES的图形应用程序设计

    《Android三维程序设计-基于OpenGL ES的图形应用程序设计》是由Prateek Mehta撰写的一本专业书籍,专注于探讨如何在Android平台上开发三维图形应用。OpenGL ES是本书的核心,它是OpenGL的一个精简版本,专为嵌入式...

    20个Android很有用的代码片段

    ### 20个Android很有用的代码片段 在Android应用开发的过程中,经常需要编写各种功能性的代码片段来实现特定的功能需求。以下是从一篇名为“20个Android很有用的代码片段”的文章中提取的一些关键代码段及其解释。...

    Android编程15个很有用的代码片段

    在深入探讨这15个Android编程中有用的代码片段之前,我们先理解这些代码片段的主要功能和应用场景。这些代码片段涵盖了从检查外部存储状态、设置透明主题、操作UI元素到发送MMS、处理文件共享、注册广播接收器以及...

Global site tag (gtag.js) - Google Analytics