Android学习笔记 开发入门(一)——建立第一个应用程序(下)

来源:互联网 发布:淘宝上次认证信息地址 编辑:程序博客网 时间:2024/05/10 06:19

Android使用XML布局文件来定义用户界面,而不是使用Java代码开发用户界面。

1.建立LinearLayout


编辑该XML文件,删掉默认的的RelativeLayout和TextView,加入下面代码,建立一个LinearLayout:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:orientation="horizontal" ></LinearLayout>

2.向LinearLayout中添加一个EditText控件:

    <EditText android:id="@+id/edit_message"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:hint="@string/edit_message" />
第一行是为EditText控件添加ID,二三行设置宽、高,第四行设置默认显示文字,表示该文字是从strings.xml中引用的,这样方便多语言使用。

3.添加string资源,在strings.xml中添加:

     <string name="edit_message">请输入文字</string>
    <string name="button_send">发送</string>

4.添加一个按钮

<Button    android:layout_width="wrap_content"    android:layout_height="wrap_content"    android:text="@string/button_send"    android:onClick="sendMessage" />
onClick表示在点击按钮的时候需要调用与之关联的Activity中的sendMessage方法。

最后布局文件变成这样
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:orientation="horizontal" >    <EditText android:id="@+id/edit_message"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:hint="@string/edit_message" />    <Button    android:layout_width="wrap_content"    android:layout_height="wrap_content"    android:text="@string/button_send"    android:onClick="sendMessage" /></LinearLayout>



5.在MainActivity中添加Button的响应方法:


首先引入view包: import android.view.*;

然后加入onClick响应方法: 

 public void sendMessage(View view) {

        // 
    }


6.建立一个Intent

Intent用于在不同Activity中传递消息。

引入包:
import android.content.Intent;

在类内添加静态变量:
public final static String EXTRA_MESSAGE = "com.gao.myfirstapp.MESSAGE";

在sendMessage方法内添加:
        Intent intent = new Intent(this, DisplayMessageActivity.class);//建立Intent
        EditText editText = (EditText) findViewById(R.id.edit_message);//获取EditText控件
        String message = editText.getText().toString();//获取EditText内容
        intent.putExtra(EXTRA_MESSAGE, message);


最后sendMessage变成下面这样:
 public void sendMessage(View view) {
        //
        Intent intent = new Intent(this, DisplayMessageActivity.class);//建立Intent
        EditText editText = (EditText) findViewById(R.id.edit_message);//获取EditText控件
        String message = editText.getText().toString();//获取EditText内容
        intent.putExtra(EXTRA_MESSAGE, message);
        startActivity(intent);
    }

7.建立第二个Activity:




然后点击finish。


8.编辑AndroidManifest.xml


<activity            android:name="com.gao.myfirstapp.DisplayMessageActivity"            android:label="@string/title_activity_display_message"            android:parentActivityName="com.gao.myfirstapp.MainActivity">            <meta-data                android:name="android.support.PARENT_ACTIVITY"                android:value="com.example.myfirstapp.MainActivity" />        </activity>

9.编辑第二个Activity中的onCreate方法,显示从第一个Activity中传过来的字符串:

  protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        // 从intent中接收
        Intent intent = getIntent();
        String message = intent.getStringExtra(MainActivity.EXTRA_MESSAGE);
        TextView textView = new TextView(this);//建立新的TextView
        textView.setTextSize(40);
        textView.setText(message);
        setContentView(textView);//显示
    }

如果报错,不要忘记引用
import android.content.*;
import android.widget.*;

10,开始调试:



搞定,收工!

0 0
原创粉丝点击