美文网首页
android-学习笔记01

android-学习笔记01

作者: figure_ai | 来源:发表于2017-03-29 21:35 被阅读0次

    大部分笔记都是来自郭霖前辈的《第一行代码》。内容也是觉得有用就记,相对来说比较混乱。

    • 四大组件
    • 活动(Activity):类似于OC的Controller,主要用于处理用户的交互事件
    • 服务(Service):后台运行的服务,即使程序退出仍然可以在后台运行
    • 广播接受器(BroadcastReceiver):允许应用接收来着各处的消息,比如电话/短信等
    • 内容提供器(ContentProvider):为应用程序之间的数据共享提供了可能,比如读取系统电话薄中的联系人,就需要通过内容提供器来实现。
    • Res目录详解
    • Drawable开头的文件都是用来放图片的
    • Values开头的文件夹是用来放字符串的
    • Menu文件夹是用来放菜单文件的
    • Layout文件夹是用来放布局文件的
    • Mipmap文件夹是放启动图标的
    • 内容的引用方式:
    • 1、在代码中通过R.string.hello_world可以获得字符串的引用(R.文件名.健名或方法)
    • 2、在XML中通过@string/hello_world可以获得字符串的引用(@文件名/健名)
      二 logCat的使用
    • 定义控件的属性
    • android:id :给当前元素定义一个唯一标识符,之后可以在代码中对这个元素进行操作。
    • 注:XML文件中引用一个id,使用@id/id_name,定义一个id使用@+id/id_name
    • activity相关知识点
    1. activity通过setContetnView方法引用布局文件
    • 所有activity都要在AndroidManifest.xml文件中进行注册才能生效
    • 通过android:label指定活动中标题栏的内容
    • 让activity成为主activity需加以下声明(点击图标即启动)
    <intent-filter> 
       <action android:name="android.intent.action.MAIN"></action>
        <category android:name="android.intent.category.LAUNCHER"></category>
    </intent-filter>
    
    • 注:应用程序没有声明主activity依旧可以安装,只是装后无法在启动器看到或者打开程序,这种一般是作为第三方服务供其他应用在内部调用。如: 支付宝快捷支付服务。
    • Activity隐藏标题栏的代码: requestWindowFeature(Window.FEATURE_NO_TITLE)
    • 注:此句代码需在setContentView前执行,否则报错
    • 在activity中,可以通过findViewById()方法返回一个view对象
      Button btn1 = (Button) findViewById(R.id.first_btn);
    • activity中Toast的使用
    • Toast是一个hud提示框,具体使用如下代码
    Toast.makeText(FirstActivity.this, "不要点我啊", 
    Toast.LENGTH_SHORT).show();
    
    • 调用Toast的静态方法makeText()就可创建,注意的是,该方法需传三个参数,第一个是上下文,因为activity本身就是一个上下文故传对应的activity.this即可,第二个参数是显示的内容,第三个参数是Toast显示的时长
    • activity中创建菜单项
    public boolean onCreateOptionsMenu(Menu menu) {
        //创建菜单
        getMenuInflater().inflate(R.menu.main, menu);    return true;}
    
    • 点击菜单的响应事件
    public boolean onOptionsItemSelected(MenuItem item) {    switch (item.getItemId()) {
            case R.id.add_item:
            Toast.makeText(this, "点击添加", Toast.LENGTH_SHORT).show();
                break;
            case  R.id.remove_item:
                Toast.makeText(this, "点击移除", Toast.LENGTH_LONG).show();
                break;
            default:
                break;
        } 
       return true;}
    
    • 销毁一个activity的两种方式
    //手机按下back键
    //通过调用finish()方法销毁activity
    button1.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { finish(); } });
    
    • 2.3Intent的使用
    • Intent是程序中各组件进行交互的一种重要方式,它不仅可以指明当前组件想要执行的动作,还可以在不同组件之间传递数据。
    • Intent分为显示Intent和隐式Intent
    • 显式Intent的使用步骤:1. 创建Intent,2.调用startActivity()方法
      Intent intent = new Intent(FirstActivity.this, MainActivity.class);startActivity(intent);
    • 隐式Intent:隐式Intent没有明确指出要启动哪个activity,而是指定了一系列抽象的action和category等信息,然后交由系统去分析这个Intent,并启动对应的activity。
    • 要成为隐式Intent可以启动的activity,必须在AndroidManifest.xml文件中绑定对应action和category
      AndroidManifest.xml文件中定义activiy对应的参数
    <activity android:name=".MainActivity">
        <intent-filter>
            <action android:name="com.example.anwser_mac.myapplication04.ACTION_SART"></action>
            <category android:name="android.intent.category.DEFAULT"></category>
            <category android:name="com.example.anwser_mac.myapplication04.my_category"></category>
        </intent-filter></activity>
    
    • 调用
    Intent intent = new Intent("com.example.anwser_mac.myapplication04.ACTION_SART");
    intent.addCategory("com.example.anwser_mac.myapplication04.my_category");
    startActivity(intent);
    

    相关文章

      网友评论

          本文标题:android-学习笔记01

          本文链接:https://www.haomeiwen.com/subject/oiryottx.html