android最新知识点总结,学习android之 知识点总结

开发andorid程序必备:

Eclipse 3.5以上版本

SDK类似于java中的jdk。

Adt 是开发Eclipe上的一个插件。

组件使用:

TestView:

为文本设置超链接,需设置该属性andorid:autoLink=”all”, 具体如下:

android:id="@+id/myTxtView01"

android:autoLink="all"

android:text="百度: http://www.baidu.com"/>

组件跳转:

运用改变Activity Layout这个技巧,就可以做出手机界面转换的效果(setContentView())。但这里有一个疑点不大很明白,就是当我定义了两个layout中定义了分别定义了一个用于跳转的Button,当我从一个界面跳转到另一个界面之后,然后再从这个界面跳转到之前界面,再从之前界面跳转的时候,此时按钮是否就需重新注册,这是为是么???

调用另一个Activity:

通过Intent来实现两个Activity间的相互跳转。具体代码如下:

Intent intent = new Intent();

intent.setClass(TwoActivityChangeActivity.this, SecondActivity.class);

startActivity(intent);

TwoActivityChangeActivity.this.finish();

其中还需要在AndroidMainfest.xml中添加要跳转到的Activity,   android.intent.category.LAUNCHER是用来设置先运行的Activity。

采用Bundle对象来实现不同Activity之间的数据传递

首先是先new 一个Bundle对象,然后将要传递的类型直接put进去即可。示例代码:

Bundle bundle = new Bundle();

bundle.putDouble(2);

bundle.putString(“yaner”);

intent.putExtras(bundle);

取得数据的时候采用getIntent().getExtras()来获取Bundle。

Handler传递数据

实例化一个handler对象:

Handler handler = new Handler(){

public void handleMessage(Message msg){

super.handleMessage(msg);

Bundle bundle = msg.getData();

String number = bundle.getString("number");

switch(msg.what){

case UPDATE_TIME:

mTextView.setText("正在更新时间:" + number);

break;

case UPDATE_COMPLETED:

mTextView.setText("更新时间完毕");

break;

}

}

};

然后封装数据并发送:

Bundle bandle = new Bundle();

bandle.putString("number", mShowNumber);

Message msg = new Message();

msg.what = UPDATE_TIME;

Msg.setData = “yaner”;

handler.sendMessage(msg);

Notification 发送消息

notification(通知) 使用:

使用通知的一个好处就是在当程序运行的时候,通过调用调用

notification给用户发送一条消息, 这样不会中断用户当前的操作,

不想AlertDialog显示那样,会截获屏幕焦点,

比如,当玩家正在玩游戏的时候,使用notification不会干扰到玩家游戏,

玩家尽可以等玩完游戏之后再去看notification(通知),而如果使用AlertDialog

的话, 则此时玩家将必须关闭AliertDialog之后才能继续玩游戏。

首先得到消息的管理对象

NotificationManager mManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);

Notification notification = new Notification(R.drawable.icon, "奋斗赚大钱", System.currentTimeMillis());

notification.flags = Notification.FLAG_AUTO_CANCEL;

Intent intent = new Intent(this, MessageAndHandlerAppActivity.class);

intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK);

Bundle bundle = new Bundle();

bundle.putString("name", "从Notification跳转过来的");

intent.putExtras(bundle);

PendingIntent contentIntent = PendingIntent.getActivity(this,

R.string.app_name, intent, PendingIntent.FLAG_UPDATE_CURRENT);

notification.setLatestEventInfo(this, "努力啊", "想法子挣钱", contentIntent);

然后调用mManager.notify(0, notification);即可.

返回数据到前一个Activity 采用startActivityForResult()方法

示例:

第一个activity:

/**实例化一个Intent*/

Intent intent = new Intent();

intent.setClass(TwoActivityChangeActivity.this, SecondActivity.class);

//注意这里在跳转的时候没有销毁intent,我估计销毁的话采用这种方式,就传不过来值了。需作测试。。。。

/**实例化一个用于传输数据的Bundle*/

Bundle bundle = new Bundle();

bundle.putDouble("height", height);

intent.putExtras(bundle);

startActivityForResult(intent, 0);

第二个activity:

SecondActivity.this.setResult(RESULT_OK, intent);    //intent是第一个activity传过来的Intent.

SecondActivity.this.finish();

保存数据的几种方式:

1. ShredPreferences临时存取数据

sharedPreferences是以XML的格式以文件的方式自动保存的。

2. 保存到目录文件下。 如:

String filename = “tempfile.tmp”;

FileOutputStream fos = openFileOutput(file_name, Context.MOME_PRIVATE);

3.  采用SQLITE存储

在程序中取得layout,然后在添加相应的视图

setContentView(R.layout.image);

ImageView imgView = new ImageView(this);

LinearLayout ll = (LinearLayout) findViewById(R.id.imageId);

ll.addView(new FrameView(this));

在Activity中获得屏幕宽、高

Display display = getWindwManager().getDefaultDisplay();

display.getWidth();  display.getHeight();

全屏幕窗口设置

requestWindowFeature(Window.FEATURE_NO_TITLE);

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

强制横屏的方法

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANGSCAPE);

强制竖屏的方法

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);

保存数据的几种方法:

1. 用sharedPreferences保存到xml文件中

2. 保存到自定义的file文件中

3. 保存到SD卡中

4. 从程序目录下读取数据(这种方式只能读不能写)

Dialog弹出框

Theme主题修改

Toatst对象的使用

Toast mtoast = new Toast(this);

ImageView  mview = new ImageView(this);

mview.setImageResource(R.drawable.icon);

mtoast.setView(mview);

mtoast.show();

ImageView图片呈现

Animation动画特效…找个示例看看,主要是xml

另外getSystemService()是Android很重要的一个API,它是Activity的一个方法,根据传入的NAME来取得对应的Object,然后转换成相应的服务对象。以下介绍系统相应的服务。

传入的Name

返回的对象

说明

WINDOW_SERVICE

WindowManager

管理打开的窗口程序

LAYOUT_INFLATER_SERVICE

LayoutInflater

取得xml里定义的view

ACTIVITY_SERVICE

ActivityManager

管理应用程序的系统状态

POWER_SERVICE

PowerManger

电源的服务

ALARM_SERVICE

AlarmManager

闹钟的服务

NOTIFICATION_SERVICE

NotificationManager

状态栏的服务

KEYGUARD_SERVICE

KeyguardManager

键盘锁的服务

LOCATION_SERVICE

LocationManager

位置的服务,如GPS

SEARCH_SERVICE

SearchManager

搜索的服务

VEBRATOR_SERVICE

Vebrator

手机震动的服务

CONNECTIVITY_SERVICE

Connectivity

网络连接的服务

WIFI_SERVICE

WifiManager

Wi-Fi服务

TELEPHONY_SERVICE

TeleponyManager

电话服务

查看android sdk版本

在sdk中,找到tools里面的android,执行它,然后点击about就能够看到该版本信息

查看签名的文件

keytool -list -keystore "android.keystore" 输入你设置的keystore密码即可

df 查看外接挂载设备

查看是否已经正确签名: jarsigner -verify -verbose -certs E:\工作\打包工具\test\signedAPK\abc.apk

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值