`
wc0903
  • 浏览: 81913 次
  • 性别: Icon_minigender_1
  • 来自: 郑州
社区版块
存档分类
最新评论

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

阅读更多

这里是你的完整的AndroidManifest.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>

</application>

</manifest>

处理Intent Call

完成AndroidManifest.xml后,为AndroidViews.java添加下面的功能:

public void showAutoComplete(){

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

startActivity(autocomplete);

}

当从你的select/case生命中调用时,这个功能会打开你的autocomplete Action。编辑选择声明中的case()来让它调用新的功能:

case 0:

showAutoComplete();

return true;

Android模拟器中运行应用。当主Activity启动时,点击Menu Button,你会看到如图8-1所示的菜单。点击AutoComplete菜单项。

点击AutoComplete按钮菜单项会激活你的autocomplete Activity,如下:

要测试AutoCompleteTextView,就输入单词January。在你敲入少量字母后,你会January出现在文本框下面,如下图所示:

然后,点击Change Layout Button,结果应该是一个扩展后的文本输入框,与如下插入类似:

现在点击Change Text Color Button并输入一些文字,如下所示:

下面的章节会为你提供在工程中实现剩余五个视图的代码。

 

Button

 

看一下下面的代码。这个代码包含了四个文件,AndroidManifest.xmlButton.xmltestButton.javaAndroidViews.java。将文件中的这些代码添加到在已存在的AndroidViews Activity中。

AndroidManifest.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>

</application>

</manifest>

Button.xml

<?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">

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

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:text="This is the test Button"/>

<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>

testButton.java

package android_programmers_guide.AndroidViews;

import android.app.Activity;

import android.os.Bundle;

import android.view.View;

import android.widget.Button;

import android.graphics.Color;

public class testButton extends Activity {

@Override

public void onCreate(Bundle icicle) {

super.onCreate(icicle);

setContentView(R.layout.Button);

final Button Button = (Button) findViewById(R.id.testButton);

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

changeButton.setOnClickListener(new Button.OnClickListener() {

public void onClick(View v){

changeOption(Button); }

});

final Button changeButton2 = (Button)

findViewById(R.id.textColorButton);

changeButton2.setOnClickListener(new Button.OnClickListener() {

public void onClick(View v){

changeOption2(Button);

}

});

}

public void changeOption(Button Button){

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

Button.setHeight(30);

}

else{

Button.setHeight(100);

}

}

public void changeOption2(Button Button){

Button.setTextColor(Color.RED);

}

}

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;

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);

}

}

启动你的应用并从菜单(如前面的图8-1所示)中选择Buttong选项。

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

尝试点击Change Layout Button。再次,结果会是一个更宽的文本显示区域,如下所示:

点击Change Text Color Button,文本就会变红,如下:

 

CheckBox

本节中你会为CheckBox视图创建一个Activity。创建Activity的步骤和前面的章节中的相同。因此,会为你提供三个主Activity文件的全部代码——AndroidManifest.xmlcheckbox.xmltestCheckBox.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>

</application>

</manifest>

 

Checkbox.xml

本节展示了checkbox.xml的全部代码。使用本章前面的指导在你的项目中创建一个名为checkbox.xml的新XML文件。使用下面的代码构建你的文件。

<?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"

<CheckBox android:id="@+id/testCheckBox"

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:text="This is the test CheckBox"/>

<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>

testCheckBox.xml

本节包含了实现你的Checkbox Action所需的最终文件。在你的项目中创建一个名为testCheckBox.java.java文件。该文件是这个Activity的主要文件并包含了可执行的代码。在testCheckBox.java中使用下面的代码。

package android_programmers_guide.AndroidViews;

import android.app.Activity;

import android.os.Bundle;

import android.view.View;

import android.widget.CheckBox;

import android.widget.Button;

import android.graphics.Color;

public class testCheckBox extends Activity {

@Override

public void onCreate(Bundle icicle) {

super.onCreate(icicle);

setContentView(R.layout.checkbox);

final CheckBox checkbox = (CheckBox)findViewById(R.id.testCheckBox);

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

changeButton.setOnClickListener(new Button.OnClickListener() {

public void onClick(View v){

changeOption(checkbox); }

});

final Button changeButton2 = (Button)

findViewById(R.id.textColorButton);

changeButton2.setOnClickListener(new Button.OnClickListener() {

public void onClick(View v){

changeOption2(checkbox);

}

});

}

public void changeOption(CheckBox checkbox){

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

checkbox.setHeight(30);

}

else{

checkbox.setHeight(100);

}

}

public void changeOption2(CheckBox checkbox){

checkbox.setTextColor(Color.RED);

}

}

 

  • 大小: 25.7 KB
  • 大小: 27.9 KB
  • 大小: 24.8 KB
  • 大小: 25.5 KB
  • 大小: 26.1 KB
  • 大小: 25.5 KB
  • 大小: 25.3 KB
0
0
分享到:
评论

相关推荐

    Windows编程新手乐园 CHM

    第八章 本篇复习——控制台应用程序和长文件名 第二篇:字体和窗口控制 第九章 第八天课程——Windows 动画:Snake 游戏 第十章 第九天课程——字体基础知识 第十一章 第十天课程——窗口控制 第十二章 第十...

    Word 2010办公应用案例视频教程下载第8章 视图和窗口操作——对比查看员工规章制度文档.zip

    总的来说,本视频教程的第8章详细介绍了Word 2010中的视图和窗口操作,旨在提升用户在处理复杂文档,尤其是对比员工规章制度文档时的工作效率。通过学习和实践,用户不仅可以熟练掌握各种视图的切换与应用,还能精通...

    《Visual C++实用教程》ppt课件(刘惊雷)

    第8章:利用CDC实现绘图程序.ppt 第9章:Windows应用程序引擎——消息映射.ppt 第10章:用户交互对象——菜单、工具栏和状态栏.ppt 第11章:对话框及常用控件.ppt 第12章:基于文档/视图结构的程序.ppt 第13章:...

    Android编程入门很简单.(清华出版.王勇).part2

    第8章Android应用程序组成 8.1深入理解Activity 8.1.1使用Intent连接Activity 8.1.2 Activity的生命周期 …… 第9章Android中的数据存储 第10章绚丽的多媒体技术 第11章Android网上冲浪 第12章Android地图服务 第4篇...

    Android编程入门很简单.(清华出版.王勇).part1

    第8章Android应用程序组成 8.1深入理解Activity 8.1.1使用Intent连接Activity 8.1.2 Activity的生命周期 …… 第9章Android中的数据存储 第10章绚丽的多媒体技术 第11章Android网上冲浪 第12章Android地图服务 第4篇...

    GBaseDataStudio管理工具手册

    - **第八章:FAQ** —— 提供了常见问题解答,帮助解决用户在使用过程中遇到的技术难题。 #### 三、版权与免责声明 文档开头部分详细阐述了GBaseDataStudio管理工具手册的版权信息和法律声明。这些声明强调了文档...

    Visual foxpro 课件--史济民

    8. **第八章:菜单和工具栏** —— 教授如何构建自定义菜单和工具栏,提升应用程序的用户体验。 9. **第九章:类和对象** —— 探索面向对象编程,理解类和对象的概念,以及如何在VFP中实现封装、继承和多态。 10....

    Photoshop CS4中文版完全自学视频教程下载第17章 PhotoshopCS4新增功能——3D图像处理.zip

    6. **3D渲染和导出**:完成3D设计后,用户可以直接在软件内进行高质量渲染,并导出为JPG、PNG或其他格式,方便用于印刷或网络展示。 7. **3D整合**:与2D图像的无缝结合是Photoshop CS4的一大亮点,用户可以将3D...

    AndroidStudio————实战演练——仿美团外卖菜单

    在本项目中,"AndroidStudio————实战演练——仿美团外卖菜单"是一个专注于使用Android Studio开发的应用程序实战案例,目标是创建一个类似于美团外卖的菜单功能。这个项目涵盖了多个Android开发的关键知识点,...

    UG NX 7.0中文版完全自学视频教程下载第1章 感受UGNX7精彩世界——UGNX7入门.zip

    本教程的第一章“感受UGNX7精彩世界——UGNX7入门”是整个学习旅程的起点,主要涵盖了以下几个关键知识点: 1. **UG NX 7.0简介**:介绍UG NX 7.0的基本功能和在工业设计中的重要性。这一版本引入了许多新特性,如...

    visual c++6.0技术内幕 带有NLC的文件查看器

     第8章 使用ActiveX控件  第9章 Internet Explorer 4通用控件  第10章 win32内存管理  第11章 位图  第12章 windows消息处理和多线程编程 第三部分 文档视图结构  第13章 菜单、键盘、加速键、多信息  第14章...

    UG NX 7.0中文版完全自学视频教程下载第3章 绘图前的设置——UG NX 7功能应用.zip

    7. **视图管理**:在UG NX 7.0中,理解和掌握视图的创建、移动、旋转以及关联方式,有助于清晰地展示设计意图,便于沟通和审查。 8. **层管理**:通过层管理,可以组织模型的不同部分,使其在设计和显示时更加有序...

    滑动菜单 上下左右

    8. **无障碍性**:考虑到无障碍功能的用户,如屏幕阅读器用户,确保滑动菜单在辅助技术下也能正常操作。 在"Sliding Drawer Master"项目的源码中,我们可以学习到如何处理复杂的滑动逻辑、优化性能、以及如何在...

    微信小程序点餐系统微信小程序开发实战

    8. 后台管理:商家管理菜单、订单、用户信息等。 三、开发流程 1. 设计原型:使用工具如Sketch、Adobe XD等设计系统界面,明确交互逻辑。 2. 数据库设计:根据需求定义数据表结构,如菜品表、订单表、用户表等。 3....

    E.xcel_2010中文版办公应用案例教程第3章 工作表的修饰——制作公司值班表.zip

    - 熟悉Excel 2010的工作界面,包括菜单栏、功能区、工作簿、工作表标签和单元格。 - 学习输入文本、数字和日期,以及基本的编辑操作,如剪切、复制、粘贴和删除。 2. **格式化单元格** - 设置字体、字号、颜色和...

    Visual C++.NET编程技术体验

    对话框高级应用 7.2.2 示例——实现无模式对话框 7.4.5 示例——使用模式属性表及向导属性表 7.5.4 示例——鼠标敏感文字 第8章 GDI+图形编程 本章示例通常含有多段被注释的演示代码,请读者查看...

    Visual C++.NET编程技术体验__实例源码

    对话框高级应用 7.2.2 示例——实现无模式对话框 7.4.5 示例——使用模式属性表及向导属性表 7.5.4 示例——鼠标敏感文字 第8章 GDI+图形编程 本章示例通常含有多段被注释的演示代码,请读者查看...

    (Sams) Pure JFC swing

    - **第8章:按钮和复选框**(Buttons and CheckBoxes)——探讨不同类型的交互按钮组件及其使用场景。 - **第9章:列表和组合框**(Lists and ComboBoxes)——讨论列表和下拉列表组件的使用技巧。 - **第10章:...

Global site tag (gtag.js) - Google Analytics