安卓开发-学习笔记

一.Android基础

  1. MainActivity类最终继承于Activity(在以前是直接继承于,现在的版本中是先继承于AppCompatActivity,再通过一系列继承,最终到Activity)。其中的onCreate方法是重写的回调方法回调方法即:不是我们主动调用的方法,而是系统在一定条件下自动调用的,特点是基本都以on开头。如onCreate()方法,它在当前类(Activity)对象创建的时候自动调用
  2. 显示页面的入口函数为setContentView(int layoutResId),函数传进一个资源ID(包括布局、图片等)。原本模板代码写的是:
setContentView(R.layout.activity_main);

这里activity_main为指定布局文件(activity_main.xml)在R所对应的变量,加载布局文件,并显示到窗口中。
注:这里布局文件都在res资源目录下

  1. 关于尺寸:在布局文件中,除了字体大小,其他的都以dp作为单位,字体大小的单位用sp

二.四大组件及相关

四大组件包括:activity、service、contentprovider、broadcast receiver

1. Activity

定义:用来提供一个能让用户与之交互的界面
请求源:手机屏幕
生命周期包括:
  onCreate()
  onStart()
  onResume()
  onPause()
  onStop()
  onRestart()
  onDestroy()

1.1 Intent和IntentFilter的理解
  • Intent(意图对象)是Activity、Service和BroadcastReceiver这三个组件之间进行通信的信使
  • Intent还可以携带数据
1.1.1 Intent的分类

在这里插入图片描述
举例:比如分享图片或者文章时,系统会列出分享目标(包括QQ、微信好友、微信朋友圈等),不确定的跳转即为隐式意图。

1.1.2 IntentFilter-----意图过滤器
  • 在配置Activity时,可以为Activity指定一个IntentFilter配置
  • 如果你的Activity希望其他应用可以访问到,需要配置<intent-filter>
  • 如果想启动其他应用的界面(Activity),那么必须使用隐式意图,并且需要在目标界面配置<intent-filter>

举例:我们手机桌面系统也是一个Activity,并且对目标程序(桌面上的程序图标–一个个Activity)配置了隐式意图,这样就实现了由桌面Activity(launcher)跳转打开其他的应用Activity。配置代码如下:

<activity
	android:name=".MainActivity"
	android:label="@string/app_name">
	<!--让当前Activity称为主页面Activity-->
	<intent-filter>
		<action android:name="android.intent.action.MAIN" />
		<category android:name="android.intent.category.LAUNCHER" />
	</intent-filter>
</activity>
1.1.3 相关API
  • Intent:意图
    Intent(Context packageContext,Class<?> cls):用于创建显式意图对象(其中Class为显式指定的Activity的Class)
    Intent(String action):用于创建隐式意图对象
    putExtra(String name,Xxx value):保存额外数据
    Xxx getXxxExtra(String name):获取额外数据
    setData(Uri data):设置有特定格式的uri数据
  • Activity:活动
    startActivity(Intent intent):一般启动Activity
    startActivityForResult(int reqCode,Intent intent):带回调启动Activity
    onActivityResult(int reqCode,int resultCode,Intent data):回调方法
    setResult(int resultCode,Intent data):设置要返回的结果
    finish():结束当前Activity
    getIntent():得到启动Activity的意图
  • Activity生命周期方法
      onCreate()
      onStart()
      onResume()
      onPause()
      onStop()
      onRestart()
      onDestroy()
  • View:代表视图的根基类
    setOnClickListener(OnClickListener listener):设置点击监听
    setOnLongClickListener(OnLongListener listener):设置长按监听
  • SmsManager:发送短信的工具类
    static SmsManager getDefault():得到当前对象
    sendTextMessage(…):发送短信
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值