android学习小结

前几天学习了关于android的一些知识,只是最近没怎么搞这个,这里就先写个小结,学了知识不用是会忘记的。。。说android是个新东西,它又不是个新东西,说它不是呢,又的确是第一次接触,为什么这样说,呵呵。。。在学习它之前一直感觉这东西很神奇,其实最后才发现它和java差不多,是java的一个提升。但是android系统底层,使用C/C++作为开发语言。接触一门新的语言,我们第一件事还是搭建开发环境。

平台的搭建:

安装JDK------>Eclipse-------->安装androidSDK------->安装ADT-------->创建AVD

安装JDK:下载JDK,根据提示安装,注意这里要设置环境变量:我的电脑->属性->高级->环境变量->系统变量中添加,在Path:中添加jdk的目录。

Eclipse:如果你已经有这个了,就不用下载啦!下载这个也很简单,网上有很多,也有中文版的哦。。。

安装ADT:打开Eclipse—>help—>installNewSoftware,点击add,再在弹出的对话框中输入想要取得名字以及在location输入网址:Http://dl-ssl.google.com/android/eclipse,然后在右侧点击Browse...并选中之前AndroidSDK的安装路径,点击Apply就完成配置啦!

其它的也很简单,这里就不一一说明啦!讲了这么多废话,下面我就一个小程序来简单的谈谈我对android的理解。

Activity:它是android应用程序和用户的接口,是android中很重要的一个组件。它响应所有窗口事件,具备控件、菜单等元素。同样,Activity具有生命周期,那何为生命周期呢?就像我们在java中一样,被我们实例化的对象有没有生命周期?答案是肯定的,只有当我们在使用它的时候它才分配内存空间执行相应的操作,这又有点像人的生老病死了。Activity有三个状态:

▲当它在屏幕前台的时候,它是激活状态,或者说是运行状态,响应用户操作的activity

▲当由当前的activity跳转到另一个activity时,即在它之上有另外一个activity,这个activity没有被完全覆盖,它就处于暂停状态,暂停状态的activity仍然是存活的。

▲当它完全被另一个activity覆盖时则处于停止状态,但它仍然保留所有的状态和成员信息。

onCreate():activity完整的生命周期是从第一次调用onCreate()开始,到其调用onDestroy()为止,它在onCreate()中设置所有的状态以完成初始化,而在onDestroy()中释放所有的系统资源。

onStart(),onStop()::Activity的可视生命周期可以看做从onStart()开始到相应的onStop()调用结束

onResume(),onPause():Activity的前台生命周期是从onResume()开始,到相应的onPause()结束,在此期间,activity位于前台最上面并与用户交流。

我们通过具体的一个例子来说明,一个简单的登录界面:

1.AndroidLoginActivity(初始时显示的Activity)

Java代码

package cn.yzz.AndroidLogin;   
import android.app.Activity;  
import android.content.Intent;  
import android.os.Bundle;  
import android.view.View;  
import android.view.View.OnClickListener;  
import android.widget.Button;  
import android.widget.EditText;  
import android.widget.Toast;  
  
public class AndroidLoginActivity extends Activity {  
    //属性  
    private EditText username;  
    private EditText password;  
    private Button login;  
    private Intent intent;  
    /** Called when the activity is first created. */  
    @Override  
    public void onCreate(Bundle savedInstanceState) {  
        super.onCreate(savedInstanceState);  
        setContentView(R.layout.main);  
        //添加登录按钮监听  
        login = (Button)findViewById(R.id.userlogin);  
        login.setOnClickListener(ocl);  
    }  
    //创建按钮监听器对象  
    OnClickListener ocl = new OnClickListener(){  
        public void onClick(View arg0) {  
            username = (EditText)findViewById(R.id.username);  
            password = (EditText)findViewById(R.id.password);  
            if("yangzhizhen".equals(username.getText().toString())&&   
                    "123456".equals(password.getText().toString())){  
                System.out.println("你点击了按钮");  
                Intent	=	new	Intent(AndroidLoginActivity.this, 	SencondActivity.class);  
                //启动Activity  
                startActivity(intent);  
            }else{  
                Toast.makeText(AndroidLoginActivity.this,"用户登录信息错	误" , Toast.LENGTH_SHORT).show();  
            }  
        }  
    };  
}

2.SencondActivity(登录成功后跳转到的Activity)

Java代码

package cn.yzz.AndroidLogin;   
import android.app.Activity;  
import android.os.Bundle;  
  
//切换显示的Activity  
public class SencondActivity extends Activity{  
    @Override  
    protected void onCreate(Bundle savedInstanceState) {  
        super.onCreate(savedInstanceState);  
        setContentView(R.layout.second);  
    }  
}

3.初始显示的Anctivity的布局文件

Java代码

<?xml version="1.0" encoding="utf-8"?>  
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  
    android:layout_width="fill_parent"  
    android:layout_height="fill_parent"  
    android:orientation="vertical" >  
    <TextView  
        android:layout_width="fill_parent"  
        android:layout_height="wrap_content"  
        android:textColor="#00ff00"  
        android:textSize="40dip"  
        android:text="@string/title" />  
    <TextView   
        android:layout_width="wrap_content"  
        android:layout_height="wrap_content"  
        android:textSize="20dip"  
        android:text="@string/user_name"/>  
    <EditText  
        android:layout_width="200dip"  
        android:layout_height="wrap_content"  
        android:textSize="20dip"  
        android:id="@+id/username"/>  
    <TextView  
        android:layout_width="wrap_content"  
        android:layout_height="wrap_content"  
        android:textSize="20dip"  
        android:text="@string/user_password"/>  
    <EditText  
        android:layout_width="200dip"  
        android:layout_height="wrap_content"  
        android:textSize="20dip"  
        android:id="@+id/password"/>  
    <Button  
        android:layout_width="wrap_content"  
        android:layout_height="wrap_content"  
        android:textSize="20dip"  
        android:text="@string/login"  
        android:id="@+id/userlogin"/>  
</LinearLayout>

4.成功登录后跳转到的Activity的布局文件

Java代码

<?xml version="1.0" encoding="utf-8"?>  
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  
    android:layout_width="fill_parent"  
    android:layout_height="fill_parent"  
    android:orientation="vertical" >    
    <TextView  
        android:layout_width="fill_parent"  
        android:layout_height="wrap_content"  
        android:textColor="#ff00ff"  
        android:textSize="50dip"  
        android:text="@string/second_title" />  
</LinearLayout>

5.用到的一些String的值

Java代码

<?xml version="1.0" encoding="utf-8"?>  
<resources>  
    <string name="title">简单登录系统</string>  
    <string name="app_name">AndroidLogin</string>  
    <string name="user_name">用户名:</string>  
    <string name="user_password">密码:</string>  
    <string name="login">登录</string>  
    <string name="second_title">您已成功登录</string>   
</resources>

6.Activity注册信息

Java代码

<?xml version="1.0" encoding="utf-8"?>  
<manifest xmlns:android="http://schemas.android.com/apk/res/android"  
    package="cn.yzz.AndroidLogin"  
    android:versionCode="1"  
    android:versionName="1.0" >  
    <uses-sdk android:minSdkVersion="3" />  
    <application  
        android:icon="@drawable/ic_launcher"  
        android:label="@string/app_name" >  
        <activity  
            android:name=".AndroidLoginActivity"  
            android:label="@string/app_name" >  
            <intent-filter>  
                <action android:name="android.intent.action.MAIN" />  
                <category       								 		android:name="android.intent.category.LAUNCHER" />  
            </intent-filter>  
        </activity>  
        <activity   
            android:name=".SencondActivity">  
        </activity>  
    </application>  
</manifest>

注意:

▲R文件中的ip信息不需要我们手动去修改或者写入,系统会根据需要自动录入ip地址,及时你修改了也没用,保存后系统又会还原成和修改前一样

▲所有的activity都要在androidManifest.xml中注册

目前我就先写这些吧,大家一起进步哦!

相关推荐