【android学习笔记】第一篇——Android开发工具及安卓基础

人生中的第一篇博文。

第一次写博客,本文仅用来记录自己学习安卓开发上的遇到的问题与学习心得,想看就看。( ̄▽ ̄)/

捣鼓了好几天,今天终于确定了自己的Android开发工具。duang!就是他

Eclipse(老版教材之王)

Android Studio

为什么不用Eclipse...哎,配置了好几天,最后还是一堆报错!枉费我一番心思!

然后Android Studio,下载,安装,两三下环境就搞好了...我的天,何乐而不为呢!

就决定是你啦!比卡丘 Android Studio!

那么现在就来记录一下 :

  • 首先是在淘宝上淘来的基于AS平台的安卓开发教程。(价值5元)

链接:https://pan.baidu.com/s/14XYH9mCZlFQ3TWntDe1Muw 密码:e5qe  

赠品:https://pan.baidu.com/s/1y9gv5xen_wqZbqos7mGADQ 密码:fmas

一、XML文件语法

  • AndroidManifest .xml的语法层次

代码如下:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.jasonchow.newapp">

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

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

    <!--<intent-filter>定义了程序的切入点-->

    </application>

</manifest>
  • 引用文件

设置属性的例子:

<布局/组件名称

       android:属性名="属性类型"

        ... 

/>

 引用属性类型例子:

android:属性名 = "@文件名/变量名"

例如:

android:label="@string/text "

注意别乱打空格

二、Activity生命周期

 

关于Activity 生命周期详细介绍:https://www.cnblogs.com/lwbqqyumidi/p/3769113.html 

Back 与 Home 的区别

问题来了:

OtherActivty的遮挡与半遮挡对Activity的生命周期的影响的区别。

三、布局

LinearLayout 线性布局

android:orientation=" "   horizontal(打横 默认) vertical(打竖)

更多布局:http://www.cnblogs.com/devinzhang/archive/2012/01/19/2327535.html

  • 布局的嵌套

activity的布局中包含(include)content_main的布局

<include layout="@layout/content_main"/>

 Failed to load AppCompat ActionBar with unknown error.

出现无法预览XML布局的情况

解决方法:

找到styles.xml在Theme前加上Base.

四、第一个程序

作用:点击在activity_main.xml中的按钮,然后弹出activity_display_message,并且文本显示文本框中的内容

做好布局的设置后,在包中  右键——NEW Class

Display为activity_display_message布局所对应的启动类

作用是修改这个Activity的Text

故将其 声明为Activity的子类

并且要在A_M_.xml文件中声明(注册)下这个Activity类

快捷键修改:https://blog.csdn.net/csdnzouqi/article/details/50454703

快捷键使用技巧大全:http://www.cnblogs.com/Seachal/p/5591600.html

快速继承父类快捷键 Ctrl +O

display.java中的代码

package com.example.jasonchow.newapp;

import android.app.Activity;
import android.os.Bundle;
import android.support.annotation.Nullable;

public class Display extends Activity{
    //把Display声明为Activty的子类


    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_display_message);//将两者关联起来,这个类启动的时候,显示这个界面文件

    }
}

至此,才算是一个完整的Activity,也就是说Activity要包含一个Java类,布局XML(java代码生成除外),以及在A_M_.xml里面注册。

之后我要写一个点击事件

找到按钮,给他绑定一个oncleck事件,名为sendMessage

之后去到MainActivity写入sendMessage

发送方函数:

   public void sendMessage(View view)
    {
        //发送方的函数
        Intent intent = new Intent(this,Display.class);//意图去哪个Activty
        EditText ed1 = (EditText)findViewById(R.id.et1);//找到EditText1
        String Message = ed1.getText().toString();//取出Message
        intent.putExtra("EXTRA_MESSAGE",Message);
        //putExtra("A",B)中,AB为键值对,第一个参数为键名,第二个参数为键对应的值。顺便提一下,如果想取出Intent对象中的这些值,需要在你的另一个Activity中用getXXXXXExtra方法,注意需要使用对应类型的方法,参数为键名
        startActivity(intent);//启动Activty
    }

去到Display.java

写入接收方函数:

  @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_display_message);//将两者关联起来,这个类启动的时候,显示这个界面文件
        Intent intent = getIntent();//启动时看一下有没有意图发送过来,有则获取
        String message = intent.getStringExtra("EXTRA_MESSAGE");//以键名获取
        TextView textView = (TextView) findViewById(R.id.text1);
        textView.setText(message);//修改TextView
    }

运行效果

第一天学习到此结束!很累,但是很爽!

猜你喜欢

转载自blog.csdn.net/qq_42795049/article/details/81207972