Android常用知识笔记

1、 安卓图片自适应

android从1.6和更高,Google为了方便开发者对于各种分辨率机型的移植而增加了自动适配的功能 
<supports-screens 
android:largeScreens="true" 
android:normalScreens="true" 
android:smallScreens="true" 
android:anyDensity="true"/>

2、 /*获取屏幕像素和屏幕密度*/

DisplayMetrics metrics=new DisplayMetrics();

getWindowManager().getDefaultDisplay().getMetrics(metrics);

int width=metrics.widthPixels;

int height=metrics.heightPixels;

float density=metrics.density;

int densityDpi=metrics.densityDpi;

3、  Android2.2中match_parent和fill_parent是一个意思 .两个参数意思一样,match_parent更贴切,于是从2.2开始两个词都可以用。那么如果考虑低版本的使用情况你就需要用fill_parent了

4、  读取电话薄

AndroidManifest.xml

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

java文件:

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

//
setContentView(R.layout.activity_contacts);

TextView tv = new TextView(this);

// TextView tv =
(TextView) findViewById(R.id.textViewC1);

String string = "联系人如下:\n";

try {

// 得到ContentResolver对象

ContentResolver contentResolver = getContentResolver();

// 取得电话本中开始一项的光标

Cursor cursor = contentResolver.query(

ContactsContract.Contacts.CONTENT_URI, null, null, null,

null);

// 向下移动光标

while (cursor.moveToNext()) {

// 取得联系人名字

int nameFieldColumnIndex = cursor

.getColumnIndex(PhoneLookup.DISPLAY_NAME);

String contract = cursor.getString(nameFieldColumnIndex);

// 取得电话号码

int
numberFieldColumnIndex = cursor

.getColumnIndex(PhoneLookup.NUMBER); String number =

cursor.getString(numberFieldColumnIndex);

string += contract + "\n";

}

cursor.close();

tv.setText(string);

setContentView(tv);

} catch (Exception e) {

e.printStackTrace();

Log.i(TAG, e.toString());

}

}

5、
窗口切换public void onCreate(Bundle
savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_01);

Log.i(TAG, "onCreate");

Button button1 = (Button) findViewById(R.id.button11);

/* 监听button的事件信息 */

button1.setOnClickListener(new Button.OnClickListener() {

public void onClick(View v) {

// 新建一个Intent对象

Intent intent = new Intent();

// 指定Intent要启动的类

intent.setClass(Activity01.this, Activity02.class);

// 启动一个新的Activity

startActivity(intent);

// 关闭当前的Activity

Activity01.this.finish();

}

});

}

6、  android.intent.action.MAIN决定应用程序最先启动的Activity ,android.intent.category.LAUNCHER决定应用程序是否显示在程序列表里。Main和LAUNCHER同时设定才有意义

时间: 2024-08-28 17:06:15

Android常用知识笔记的相关文章

打造自己的Android常用知识体系

前言 Android常用知识体系是什么鬼?所谓常用知识体系,就是指对项目中重复使用率较高的功能点进行梳理.注意哦,不是Android知识体系. 古语道:学而不思则罔,思而不学则殆.如果将做项目类比为“学”,那么整理就可以类比为“思”. 在做项目过程中总是会遇到使用相同的功能,比如toast.对话框.刷新加载列表.网络框架.数据库等等,一个简单的方法就是从之前的项目中复制粘贴到新项目中,然后做一些个性化修改,好了,这就“大功告成”了.当另外一个新项目用到了,再次复制粘贴.这样是不是很low.但是当

Android 常用知识列举

在Activity可见时进行页面刷新,即处于Activity栈顶,当然,这种刷新操作 可以在onStart,onResume,onRestart,onNewIntent+singleTask中,但最好的位置是onResume,其他方式可能会造成窗体泄露 Service的两种启动方式,startService和bindService,根据启动方式的不同,当然也有一种称为复合方式startService+bindService,Service销毁的方式不同,startService可以做app退出后

git常用知识笔记

学习资料: http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000 http://codingnow.cn/version/212.html http://blog.jobbole.com/34503/ http://www.cnblogs.com/lwzz/archive/2013/02/23/2921426.html Git即集中式版本控制系统.mac上的安装:直接从AppStore

java/android 设计模式学习笔记(14)---外观模式

这篇博客来介绍外观模式(Facade Pattern),外观模式也称为门面模式,它在开发过程中运用频率非常高,尤其是第三方 SDK 基本很大概率都会使用外观模式.通过一个外观类使得整个子系统只有一个统一的高层的接口,这样能够降低用户的使用成本,也对用户屏蔽了很多实现细节.当然,在我们的开发过程中,外观模式也是我们封装 API 的常用手段,例如网络模块.ImageLoader 模块等.其实我们在开发过程中可能已经使用过很多次外观模式,只是没有从理论层面去了解它. 转载请注明出处:http://bl

黑马程序员---Objective-C基础学习---类、对象、方法相关知识笔记

------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 类.对象.方法相关知识笔记 Objective-C相对于C语言有了面向对象的特性,但是ObjC又没有其他面向对象语言那么多语法特性,ObjC本身对面向对象进行了精简.下面是一些相关知识笔记. 类定义 成员变量 方法和属性 self关键字 类定义 在C#.Java等其他高级语言中定义一个类是相当简单点的,直接一个关键字class加一对大括号基本就完成了,但是在ObjC中类的定义相对变化比较大.现

android基础知识13:AndroidManifest.xml文件解析

1.重要性 AndroidManifest.xml是Android应用程序中最重要的文件之一.它是Android程序的全局配置文件,是每个 android程序中必须的文件.它位于我们开发的应用程序的根目录下,描述了package中的全局数据,包括package中暴露的组件 (activities, services, 等等),以及他们各自的实现类,各种能被处理的数据和启动位置等重要信息. 因此,该文件提供了Android系统所需要的关于该应用程序的必要信息,即在该应用程序的任何代码运行之前系统所

Android 常用开发工具以及Mac常用软件

Android 常用的开发工具记录.其中包括AndroidStudio(IDEA)插件.Mac 上好用的软件以及国内知名Android开发者博客等. Android Studio 插件 codota 插件,提供高质量的Android代码片段搜索,官方网站codota官网 Android 网站 Android Developer Androuid 官网,不解释. AndroidDevTool 国人维护的Android开发工具的整理. Android Arsenal 各种各样的Android开源库的

java/android 设计模式学习笔记(10)---建造者模式

这篇博客我们来介绍一下建造者模式(Builder Pattern),建造者模式又被称为生成器模式,是创造性模式之一,与工厂方法模式和抽象工厂模式不同,后两者的目的是为了实现多态性,而 Builder 模式的目的则是为了将对象的构建与展示分离.Builder 模式是一步一步创建一个复杂对象的创建型模式,它允许用户在不知道内部构建细节的情况下,可以更精细地控制对象的构造流程.一个复杂的对象有大量的组成部分,比如汽车它有车轮.方向盘.发动机.以及各种各样的小零件,要将这些部件装配成一辆汽车,这个装配过

Android群英传笔记——第八章:Activity与Activity调用栈分析

Android群英传笔记--第八章:Activity与Activity调用栈分析 开篇,我们陈述一下Activity,Activity是整个应用用户交互的核心组件,了解Activity的工作模式,生命周期和管理方式,是了解Android的基础,本节主讲 Activity的生命周期与工作模式 Activity调用栈管理 一.Activity Activity作为四大组建出现平率最高的组件,我们在哪里都能看到他,就让我们一起先来了解一下他的生命周期 1.起源 Activity是用户交互的第一接口,他