论坛首页 移动开发技术论坛

第八章 列表、菜单以及其它视图——后

浏览 2613 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2010-03-19   最后修改:2010-03-19

AndroidViews.java

创建这个Activity的最后一步是编辑AndroidViews.java。如果你想要从主AndroidViews Activity中调用testCheckBox Activity,你必须给AndroidViews.java添加代码。比较一下下面的代码和你当前的AndroidViews.java。添加所需代码来完善你的文件。

package android_programmers_guide.AndroidViews;

import android.app.Activity;

import android.os.Bundle;

import android.view.Menu;

import android.content.Intent;

public class AndroidViews extends Activity {

/** Called when the Activity is first created. */

@Override

public void onCreate(Bundle icicle) {

super.onCreate(icicle);

setContentView(R.layout.main);

}

@Override

public boolean onCreateOptionsMenu(Menu menu) {

super.onCreateOptionsMenu(menu);

menu.add(0, 0, "AutoComplete");

menu.add(0, 1, "Button");

menu.add(0, 2, "CheckBox");

menu.add(0, 3, "EditText");

menu.add(0, 4, "RadioGroup");

menu.add(0, 5, "Spinner");

return true;

}

@Override

public boolean onOptionsItemSelected(Menu.Item item){

switch (item.getId()) {

case 0:

showAutoComplete();

return true;

case 1:

showButton();

return true;

case 2:

showCheckBox()

return true;

case 3:

return true;

case 4:

return true;

case 5:

return true;

}

return true;

}

public void showButton() {

Intent showButton = new Intent(this, testButton.class);

startActivity(showButton);

}

public void showAutoComplete(){

Intent autocomplete = new Intent(this, AutoComplete.class);

startActivity(autocomplete);

}

public void showCheckBox() {

Intent checkbox = new Intent(this, testCheckBox.class);

startActivity(checkbox);

}

}

启动你的应用并从菜单中选择CheckBox选项。

下面的插图展示了Checkbox Activity的样子。

双击Change LayoutChange Test Color按钮。结果如下所示。

EditText

在本节中,与上个类似,你会为EditText 视图创建一个Activity。创建Activity的步骤跟前面的章节中非常类似。因此会为你提供三个主要的Activity文件的全部代码——AndroidManifest.xmledittext.xmltestEditText.java。下面的会为你提供这些代码。

AndroidManifest.xml

本节包含了当前AndroidViewAndroidManifest.xml的全部代码。如果你在Eclipse中学习,将你的ActivityAndroidManifest.xml文件更改为如下这样:

<?xml version="1.0" encoding="utf-8"?>

<manifest xmlns:android=http://schemas.android.com/apk/res/android

package="android_programmers_guide.AndroidViews">

<application android:icon="@drawable/icon">

<activity android:name=".AndroidViews"

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=".AutoComplete" android:label="AutoComplete">

<intent-filter>

<action android:name="android.intent.action.MAIN" />

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

</intent-filter>

</activity>

<activity android:name=".testButton" android:label="TestButton">

<intent-filter>

<action android:name="android.intent.action.MAIN" />

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

</intent-filter>

</activity>

<activity android:name=".testCheckBox" android:label="TestCheckBox">

<intent-filter>

<action android:name="android.intent.action.MAIN" />

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

</intent-filter>

</activity>

<activity android:name=".testEditText" android:label="TestEditText">

<intent-filter>

<action android:name="android.intent.action.MAIN" />

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

</intent-filter>

</activity>

</application>

</manifest>

Edittext.xml

本节展示editttext.xml的全部代码。根据章节前面的指导创建一个新的名为edittext.xmlXML文件。使用下面的代码构建你的文件。

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android=http://schemas.android.com/apk/res/android

android:orientation="vertical"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

<EditText android:id="@+id/testEditText"

android:layout_width="fill_parent"

android:layout_height="wrap_content"

/>

<Button android:id="@+id/layoutButton"

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:text="Change Layout"/>

<Button android:id="@+id/textColorButton"

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:text="Change Text Color"/>

</LinearLayout>

testEditText.java

本节包含了实现Edittext Activity的最终文件。在项目中创建一个名为testEditText.java的新.java文件。该文件时Activity的主文件并且包含了可执行的代码。在testEditText.java中使用下面的代码来完善该Activity

package android_programmers_guide.AndroidViews;

import android.app.Activity;

import android.os.Bundle;

import android.view.View;

import android.widget.EditText;

import android.widget.Button;

import android.graphics.Color;

public class testEditText extends Activity {

@Override

public void onCreate(Bundle icicle) {

super.onCreate(icicle);

setContentView(R.layout.edittext);

final EditText edittext = (EditText)findViewById(R.id.testEditText);

final Button changeButton = (Button)findViewById(R.id.layoutButton);

changeButton.setOnClickListener(new Button.OnClickListener() {

public void onClick(View v){

changeOption(edittext); }

});

final Button changeButton2 = (Button)

findViewById(R.id.textColorButton);

changeButton2.setOnClickListener(new Button.OnClickListener() {

public void onClick(View v){

changeOption2(edittext);

}

});

}

public void changeOption(EditText edittext){

if (edittext.getHeight()==100){

edittext.setHeight(30);

}

else{

edittext.setHeight(100);

}

}

public void changeOption2(EditText edittext){

edittext.setTextColor(Color.RED);

}

}

AndroidViews.java

创建这个Activity的最后一步是编辑AndroidViews.java。如果你想要从主AndroidViews Activity中调用testEdittext Activity,你必须给AndroidViews.java添加代码。比较一下下面的代码和你当前的AndroidViews.java。添加所需代码来完善你的文件。

package android_programmers_guide.AndroidViews;

import android.app.Activity;

import android.os.Bundle;

import android.view.Menu;

import android.content.Intent;

public class AndroidViews extends Activity {

/** Called when the Activity is first created. */

@Override

public void onCreate(Bundle icicle) {

super.onCreate(icicle);

setContentView(R.layout.main);

}

@Override

public boolean onCreateOptionsMenu(Menu menu) {

super.onCreateOptionsMenu(menu);

menu.add(0, 0, "AutoComplete");

menu.add(0, 1, "Button");

menu.add(0, 2, "CheckBox");

menu.add(0, 3, "EditText");

menu.add(0, 4, "RadioGroup");

menu.add(0, 5, "Spinner");

return true;

}

@Override

public boolean onOptionsItemSelected(Menu.Item item){

switch (item.getId()) {

case 0:

showAutoComplete();

return true;

case 1:

showButton();

return true;

case 2:

showCheckBox();

return true;

case 3:

showEditText();

return true;

case 4:

showRadioGroup();

return true;

case 5:

showSpinner();

return true;

}

return true;

}

public void showButton() {

Intent showButton = new Intent(this, testButton.class);

startActivity(showButton);

}

public void showAutoComplete(){

Intent autocomplete = new Intent(this, AutoComplete.class);

startActivity(autocomplete);

}

public void showCheckBox(){

Intent checkbox = new Intent(this, testCheckBox.class);

startActivity(checkbox);

}

public void showEditText() {

Intent edittext = new Intent(this, testEditText.class);

startActivity(edittext);

}

}

启动你的应用,并从菜单中选择Edittext选项。

下面的插图显示了Edittext Activity的样子。

双击Change Layout Change Test Color按钮。结果就如下插图所示。

 

RadioGroup

在本节中,与上个类似,你会为RadioGroup 视图创建一个Activity。创建Activity的步骤跟前面的章节中非常类似。因此会为你提供三个主要的Activity文件的全部代码——AndroidManifest.xmlradiogroup.xmltestRadioGroup.java。下面的会为你提供这些代码。

AndroidManifest.xml

本节包含了当前AndroidViewAndroidManifest.xml的全部代码。如果你在Eclipse中学习,将你的ActivityAndroidManifest.xml文件更改为如下这样:

<?xml version="1.0" encoding="utf-8"?>

<manifest xmlns:android=http://schemas.android.com/apk/res/android

package="android_programmers_guide.AndroidViews">

<application android:icon="@drawable/icon">

<activity android:name=".AndroidViews"

android:name=".AutoComplete" android:label="AutoComplete">

<intent-filter>

<action android:name="android.intent.action.MAIN" />

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

</intent-filter>

</activity>

<activity android:name=".testButton" android:label="TestButton">

<intent-filter>

<action android:name="android.intent.action.MAIN" />

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

</intent-filter>

</activity>

<activity android:name=".testCheckBox" android:label="TestCheckBox">

<intent-filter>

<action android:name="android.intent.action.MAIN" />

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

</intent-filter>

</activity>

<activity android:name=".testEditText" android:label="TestEditText">

<intent-filter>

<action android:name="android.intent.action.MAIN" />

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

</intent-filter>

</activity>

<activity android:name=".testRadioGroup" android:label="Test

RadioGroup">

<intent-filter>

<action android:name="android.intent.action.MAIN" />

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

</intent-filter>

</activity>

</application>

</manifest>

Radiogroup.xml

本节展示radiogroup.xml的全部代码。根据章节前面的指导创建一个新的名为radiogroup.xmlXML文件。使用下面的代码构建你的文件。

  • 大小: 25.4 KB
  • 大小: 47.9 KB
  • 大小: 24.8 KB
  • 大小: 46.8 KB
论坛首页 移动开发技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics