总结Android Studio导入项目的几种方法

 更新时间:2016年9月20日 19:58  点击:1948
作为Android开发神器的Android Studio,你肯定想知道它导入项目有哪些方法,然后使用一种比较适合自己的方法,现在我们来讲讲Android Studio导入项目的几种方法。

本篇教程中使用到的Android Studio版本为1.0, Eclipse ADT版本23.0.4。请尝试更新到该版本。

Android Studio默认使用 Gradle 构建项目, Eclipse 默认使用Ant构建项目。建议Android Studio导入项目时,使用 Gradle 构建项目。

导入 Eclipse 项目

本例中,使用到的 Eclipse 项目结构如图:

总结Android Studio导入项目的几种方法

 

e-demo 为主项目, appcompat_v7 为 library 项目。

导入 Generate Gradle build files 项目

Google官方建议是通过本方法进行Android Studio导入 Eclipse 项目。

这种方式有一个好处就是兼容 Eclipse 的文件目录结构,通过版本控制中的文件过滤,可以在一个项目组中,同时使用 Eclipse 和Android Studio。

讲解1

File --> Export

总结Android Studio导入项目的几种方法

 

讲解2

选择导出类型。选择 Android --> Generate Gradle build files 。

总结Android Studio导入项目的几种方法

 

点击 Next 。

讲解3

很长一段英语(完全看不懂是什么意思)。

总结Android Studio导入项目的几种方法

 

点击 Next 。

讲解4

选择要导出的项目。

总结Android Studio导入项目的几种方法

 

因为我的 e-demo 项目依赖了 appcompat_v7 项目,所以我将 e-demo 和 appcompat_v7 都选择了导出。

点击 Next 。

讲解5

最终确认要导出的项目。

总结Android Studio导入项目的几种方法

 

Force overriding of existing files 表示覆盖导出文件。使用 Generate Gradle build files 的方式导出项目,会在项目目录中生成一些文件。这里的覆盖文件指的就是覆盖这些可能已经生成过的文件。如果你之前有使用这种方式导出过项目,建议勾选。

点击 Finish 。

讲解6

这一步没有什么好说的,直接点击 Finish 。

总结Android Studio导入项目的几种方法

 

讲解7

Finish 点击完毕,并没有弹出窗口显示导出的项目,就好像什么事情都没有做一样。其实,使用这个方式导出项目,是在项目中添加了一些文件,我们可以到项目目录下去看一看这些生成文件。

工作空间目录下

总结Android Studio导入项目的几种方法

 

e-demo 目录下

总结Android Studio导入项目的几种方法

 

appcompat_v7 目录下

总结Android Studio导入项目的几种方法

 

我们可以发现:在工作空间目录下,多出了 gradle 文件夹和 build.gradle 、 build.gradle 、 gradlew 、 gradlew.bat 、 settings.gradle 文件;在 e-demo 目录下多出了 build.gradle 文件; 在 appcompat_v7 目录下多出了 build.gradle 文件。这些文件和文件夹都和 Gradle 有关系,用于构建项目。这些文件以及文件夹的作用,我们以后再说。

讲解8

由于 Eclipse 的 ADT 插件已经很久没有更新了,自动生成的 Gradle 编译设置已经跟不上Android Studio的更新速度,所以我们需要手动修改一些内容。

打开工作空间目录下的 gradle --> wrapper --> gradle-wrapper.properties 。修改一下内容: distributionUrl=http://services.gradle.org/distributions/gradle-a.b.c-all.zip --> distributionUrl=https://services.gradle.org/distributions/gradle-2.2.1-all.zip

打开工作空间目录下的 build.gradle 文件。修改以下内容:

classpath 'com.android.tools.build:gradle:0.x.+' --> classpath 'com.android.tools.build:gradle:1.0.0' 。

之所以这么设置,是因为: Eclipse 导出的 Gradle 设置已经不是Android Studio 1.0 所支持的 Gradle 已经 Gradle 插件版本,需要手动更为支持的版本。否则轻则必须不能离线导入项目,重则项目导入失败。

讲解9

打开Android Studio,选择 Open an existing Android Studio project。

总结Android Studio导入项目的几种方法

 

讲解10

此时会弹出一个框,让你选择文件夹,这个时候需要注意的就是,你需要选择原来的 Eclipse 的工作空间目录,而不是 e-demo 目录。

总结Android Studio导入项目的几种方法

 

点击 OK 。

讲解11

设置导入选项。

总结Android Studio导入项目的几种方法

 

此处有一些比较重要的设置需要讲解一下。

Gradle project :此处通常显示的路径并不是你的 Eclipse 的工作空间的目录,而是 Eclipse 的工作空间的目录中的 gradle 路径。你需要手动删除后面的 gradle ,否则项目导入,你是看不到你的代码的,只能看到 gradle 目录下的内容。

Create directories for empty content roots automatically :不是很明白它的作用,一般默认即可。

Use default gradle wrapper(recommended) 和 Use local gradle disribution :这两个是让你设置使用的 Gradle 。默认会勾选 Use default gradle wrapper(recommended) ,我们需要手动勾选 Use local gradle disribution 。

Gradle home :勾选 Use local gradle disribution 后此项编程可编辑状态,默认的此处的地址为Android Studio安装目录中的 Gradle 路径地址。此处可能会有一些错误的警告,提示内容为: Gradle location is incorrect 。而你的这个目录下,确实是有 Gradle 的。产生这个问题的原因,很可能是因为 Gradle home 选项中,路径中的斜杠为 / 而不是 ** 。你需要点击左右的文件选择按钮,重新选择到Android Studio安装目录中的 **Gradle ,问题即可解决。

Offline work :设置 Gradle 使用离线的方式导入项目。你可以勾选也可以不勾选。如果你有进行 讲解8 的操作,你则可以勾选,以离线的方式进行编译。

点击 OK 。之后便会看到编译进度条,根据每个人机器的配置,编译的时间不同。

总结Android Studio导入项目的几种方法

 

编译完成之后,自动跳转到Android Studio的主页面。在编译的工程中,会有以下的弹框:

总结Android Studio导入项目的几种方法

 

之所以有这个弹框,是因为Android Studio默认使用 JAVA 1.7 进行编译,如果你的项目不是 1.7 ,则会弹框让你选择。建议选择 Yes ,因为当你使用 JAVA 1.7 的时候,只要不使用 JAVA 1.7 的资源自动释放这个新特性,能够完美得兼容 JAVA 1.6 的Android设备。

如果你看到下面这个界面,说明你已经导入成功了。

总结Android Studio导入项目的几种方法

 

直接导入 Eclipse 项目

如果不使用 Generate Gradle build files 导出项目,可以使用Android Studio直接打开 Eclipse 工作空间,进行项目导入。

不使用 Gradle 编译项目

这种方式可以兼容 Eclipse 的文件目录结构,通过版本控制中的文件过滤,可以在一个项目组中,同时使用 Eclipse 和Android Studio。但是在Android Studio中并不是使用 Gradle 构建项目,而是使用的 Ant 。

讲解12

打开Android Studio,选择 Import Non-Android Studio project。

总结Android Studio导入项目的几种方法

 

在弹出的目录选择框中,选择 Eclipse 的工作空间 。

讲解13

接下来回让你选择编译环境。选择 Create project from existing sources 。

总结Android Studio导入项目的几种方法

 

讲解14

总结Android Studio导入项目的几种方法

 

设置 Android Studio Project 名称以及存放目录。一般默认即可。

点击 Next 。

讲解15

总结Android Studio导入项目的几种方法

 

选择资源文件以及资源文件夹。根据你需要导入的项目进行勾选。选择一个项目的时候,你需要选择它依赖的 Library 项目以及他的 src 和 gen 目录。

选择完毕,点击 Next 。

讲解16

总结Android Studio导入项目的几种方法

 

选择要导入的 jar 。第一个 .mylyn 是 Eclipse 插件的内容,我们需要手动过滤掉,其他的根据你的需要,进行选择。

选择完毕,点击 Next 。

讲解17

总结Android Studio导入项目的几种方法

 

选择Android Studio识别出的 Module ,也就是 Eclipse 中的 Project 。勾选你想导入的项目即可。

选择完毕,点击 Next 。

讲解18

总结Android Studio导入项目的几种方法

 

选择编译的 SDK 。在这里,你需要选择 Android SDK ,最好和之前使用 Eclipse 时使用的SDK一样。同样,你也可以再次进行一些简单的环境设置,在此就不说了。

选择完毕,点击 Next 。

讲解19

总结Android Studio导入项目的几种方法

 

选择识别出的 AndroidManifest.xml 文件。默认全部勾选即可。

点击 Finish ,Android Studio就开始导入项目了。

讲解18

在导入的过程中,如果Android Studio识别出原项目的依赖关系,便会弹出对话框让你进行选择。如果想保持之前的依赖关系,点击 OK 即可。

总结Android Studio导入项目的几种方法

 

当你看到这个界面,就表示导入成功了。项目使用 Ant 构建,并不是Android Studio 默认的 Gradle 。

总结Android Studio导入项目的几种方法

 

使用 Gradle 编译项目

本方法有一个缺点就是,一次只能导入一个 Eclipse 项目。对于那些只使用到了官方系列的支持包的 Eclipse 项目来说,会方面很多,而且同时兼容 Eclipse 文件目录结构。

讲解19

打开Android Studio,选择 Import Non-Android Studio project。

总结Android Studio导入项目的几种方法

 

在弹出的目录选择框中,选择 你想导入的项目所在的目录,而不是 Eclipse 的工作空间 。

总结Android Studio导入项目的几种方法

 

讲解20

Android Studio识别出你的项目是一个 Eclipse Android 项目,它将重新使用 Gradle 构建项目。

Android Studio会完整复制项目文件到一个新的目录中,你需要设置这个新目录的地址。

总结Android Studio导入项目的几种方法

 

设置完毕,点击 Next 。

讲解21

将之前 Ant 架构改变为 Gradle 架构。

总结Android Studio导入项目的几种方法

 

Replace jars with dependencies,when possible :将 Ant 的 jar 依赖关系使用 dependencies 重构。

Replace library sources with dependencies,when possible :将 Ant 的 library 项目的依赖关系使用 dependencies 重构。

Create Gradle-style(cameCase) module names :使用 Gradle 的样式构建Android Studio的 Module名称。

建议全选,点击 Finish 。Android Studio开始编译项目,同时进入Android Studio主页面。

同样的,在编译的过程中,依然会提示你语言等级的问题,选择 Yes 。

总结Android Studio导入项目的几种方法

 

导入Android Studio项目

Android Studio项目,指的是使用 Gradle 进行构建的项目。默认的文件结构如下:

project-name

+ app/

+ src/

+ main/

+ assets/

+ java/

+ package

...

+ res/

+ drawable/

...

+ layout

...

+ values

...

| Androidmanifest.xml

| build.gradle

+ gradle/

+ wrapper/

| gradle-wrapper.jar

| gradle-wrapper.properties

| build.gradle

| gradlew

| gradlew.bat

| settings.gradle

有的一些Android Studio项目有对 Eclipse 做兼容处理,项目结构看起来和 Eclipse 是相同的。

讲解22

当你从网络上或者其他地方获取到一份Android Studio项目源码时,你希望能够导入到Android Studio中。首先,你需要先对这份源码进行一些修改。具体的修改内容,请参照 讲解8 。

打开Android Studio,选择 Open an existing Android Studio project。

总结Android Studio导入项目的几种方法

 

在弹出的路径选择框中,选择你要导入的Android Studio项目,点击 OK 。

讲解23

然后会弹出和 讲解11 相同的页面,同样,和 讲解11 进行一样的设置即可。

总结Android Studio导入项目的几种方法

 

之后的步骤,同 讲解11 ,在此不再赘述。

其他导入方式

导入一个项目除了在Android Studio起始页进行导入之外,你也可以在Android Studio主页中进行导入。

File --> Import Project 或者 File --> Import Module 。

总结Android Studio导入项目的几种方法

 

导入的过程和前面的讲解都是一样的,就不在赘述了。

Android Stuio是Google io的一大亮点,大家赶快下载下来玩一下,本教程结合图文来介绍Android Stuido下载安装教程及开发环境搭建。

AndroidStudio下载地址:https://developer.android.com/sdk/installing/studio.html#download

如果你没有翻墙或者不会翻墙可以从百度网盘下载安装:

android-studio-bundle-130.677228-windows

Mac版本:android-studio-bundle-130.677228-mac 感谢@iceskysl

下面详细介绍一下安装过程及配置过程:(以windows 7为例)

点解下载好的zip中的exe可执行文件,安装,可以自行设置安装目录

[图文]Android Studio下载安装及配置开发环境教程

 

安装好后点击studio.exe,如果不能打开,用记事本打开android-studioin 目录下的studio.bat 将 SET VM_OPTIONS_FILE=%IDE_BIN_DIR%studio%BITS%.exe.vmoptions 改为 SET VM_OPTIONS_FILE=%IDE_BIN_DIR%studio%BITS%.exe就可以使用了

[图文]Android Studio下载安装及配置开发环境教程

 

运行时的欢迎界面和eclipse有点像

[图文]Android Studio下载安装及配置开发环境教程

 

启动完成后,就是一个引导页面,可以新建项目,可以导入项目。只是觉得左边那个recentProject有点像xcode的意思了。

[图文]Android Studio下载安装及配置开发环境教程

 

我们还是从Helloword开始吧,我们选择New project,然后出现的界面如图所示和eclipse创建项目差不多,输入项目名,选择编译环境,然后亮点就是可以选择theme了,还是挺不错的。

[图文]Android Studio下载安装及配置开发环境教程

 

再下一步还是有eclipse上面的创建项目中选择图标一样

[图文]Android Studio下载安装及配置开发环境教程

 

选择一个activity模板和eclipse一样

[图文]Android Studio下载安装及配置开发环境教程

 

最后点击 finish按钮后,耐心等一会,然后再出来了一个创建新项目的进度条。第一次有点慢,会下载一些gradle的东西

[图文]Android Studio下载安装及配置开发环境教程

 

至此,Android Studio的下载安装基本完成,大家就可以写自己的项目了。

 

另外一篇网上找的文字教程

Android Stuio是本次Google io的一大亮点啊,一大早起来就赶紧下载来玩玩了。。。

如果你不幸被墙了,可以去这个帖子下载,我已经上传到百度盘里面了。

[Android利器]Android Studio下载地址来? 。。

http://www.eoeandroid.com/forum. ... 75380&fromuid=10996

下载安装好后,就跟着我一起来玩起来吧!!!

1.下载 ,这个还说的话,就证明你太菜了

2.安装需要java环境的,也跳过了,安装程序会自动查找你的JDK路径什么的,一路下一步就行了

3.运行时的欢迎界面 ,和eclipse有点像。哈哈

4.启动完成后,就是一个引导页面,可以新建项目,可以导入项目。只是觉得左边那个recentProject有点像xcode的意思了。

5.我们还是从 Helloword开始吧。。。 我们选择New project,然后出现的界面就是这样的。。

里面和eclipse创建项目差不多,输入项目名,选择编译环境,然后亮点就是可以选择theme了。。还是挺不错的。并且把is library也提出来了,蛮方便的

6.再下一步还是有eclipse上面的创建项目中选择图标一样一样的。。

7.又是选择一个activity模板 ,eclipse和面也有。哎。这里我就一直跳过了。大家直接看图吧

8. 点击 finish按钮后,等好久(我都以为卡死了),然后再出来了一个创建新项目的进度条。

第一次有点慢。。。会下载一些gradle的东东

9. 卡在了上面那一步,下载 gradle ,卡了我半小时之久,疯了。。现在继续 。。。

配置好gradle后就进行具体的Studio页面了。。我把 HelloWorld项目展开,如下图:

10.安装后,我一般我就会先去找找设置在哪里,设置个行号啊什么。。看了一下大体的菜单布局,和eclipse还是蛮像的。但是一些菜单位置是变化了的。

设置的位置 : File->Settings

设置里面的布局又是和eclipse非常相似,不过精简是许多。

a. 显示行号: File->settings->Editor - >Appearance

如果需要显示空格 ,则可以把line Number下面的show WhiteSpace勾上

b.修改大小:File->Settings->Editor->Color & Font ->Font .

需要先将系统 内置的另存一份,要不是不能修改字体大小的。点击 Save as 保存成自定义的名字。然后size就可以修改了,你可以修改成自定义大小。如果需要修改字体样式 ,需要先从 Available fonts中双击加到右边的select Fonts里面,然后最右边的上下按钮,调整位置 。再点击规划方的OK 或者是apply进行 保存

11. 再来一张工作区的大体功能图。看大图,里面有注释哦。

从整体工作区来看,我个人觉得比eclipse更人性化呢。

关于Studio的基本功能大体就是这样啦,其它的操作和 eclipse差不多,再讲就重复了。

大家在使用过程中如果有什么体会可以帖上来。

@ICE 这里写了一个mac版本的。

去围观吧

Android Studio是一个Android开发环境,基于IntelliJ IDEA. 类似 Eclipse ADT,Android Studio 提供了集成的 Android 开发工具用于开发和调试。

前言

最近Android studio(下文简称AS)官方发布了正式版,目前火得不行。个人认为主要是因为android是google自家的产品,AS也是他自己搞的IDE,以后的趋势android开发肯定会用AS,至于eclipse的adt插件是否继续更新就不可而知了。最近我也在android官网找了一下集成好的 adt-bundle,但没有找到,可能是路径变了(搜索也没有找到)或者是真的为了支持AS就下架了。Github上现在也是一大堆的AS项目,所以这是个趋势啊。

之所以写本文是因为网上找的eclipse迁移到AS的相关文章都比较老,不一定适用(至少我遇到了很多问题)

准备工作

1、 去官网下载AS最新版,目前是1.0版本。

2、 升级AS,目前可以升级到1.0.2。升级过程中可能会遇到些问题,具体如下:

① 选择升级渠道。AS的升级是可以自己选择升级的渠道,不同的渠道的发布版本不一样,如图(我选择的stable channel,每个渠道对应什么样的版本这里不解释,网上有说明。)

[最新图文版]如何将项目从eclipse迁移到android studio?

 

② 网络问题。google在大陆的情况大家都是知道的,所以更新不了也不奇怪,你需要使用vpn或者代理。读者自行网上找解决网络的方法,这里不方便解释,你懂的。

③ 升级ADT到ADT-23.0.4(本文默认你已经有安装了ADT的eclipse)。如果你的eclipse版本太低的话那么还得先下载一个高版本的eclipse(我使用的是version=4.3.2)再安装ADT-23.0.4。

准备工作中都是用的最新的版本,升级虽然不是必须的,但是为了避免遇到莫名其妙的问题就照做吧。

迁移步骤

1、 eclipse导出gradle项目。

File->Export->Generate Gradle build files然后一直下一步,选择你要导出的项目(不用管依赖项目,会自动导出的),如图:

[最新图文版]如何将项目从eclipse迁移到android studio?

 

2、 AS导入。

启动AS进入“welcome to android studio”这个界面,选择“Import Non-Andorid Studio Project”,一定是这个选项,不然导入有问题。(如果你的AS不是在这个界面,那么通过File->close project就可以进入这个界面了)然后找到步骤1中的那个项目就可以成功导入了。

[最新图文版]如何将项目从eclipse迁移到android studio?

 

3、 耐心等待。

导入的时候可能比较慢,因为要下载gradle,然后就等下载完成。如果是因为自身网络的问题那么就用vpn、代理之类的(File->Settings->Http proxy)。

4、 更改Gradle版本(非必须)。一般导出的项目都会有版本不一致的问题,那么在AS提示修复Gradle版本同意修复就可以了。

根据以上的步骤基本上算是成功迁移了项目。你的项目如果有多个依赖包,那么可能编译不过,大概提示是有多个相同的包,比如support-v4包。如果遇到这样的问题,可以进行如下操作。

1、 那么可以把support-v4.jar删掉。

2、 打开project structrue(ctrl+alt+shift+s),找刚刚那个module,选择Dependencies,点击右边的”+”号重新添加v4包即可。

[最新图文版]如何将项目从eclipse迁移到android studio?

 

基本上通过这些步骤就可以把eclipse项目迁移到AS上了,要是遇到其他的问题基本上通过AS提示就可以处理,目前还没有遇到。更多的AS的使用就只有慢慢熟悉。

官方文档

以下是官方文档,我也是根据官方文档来做的,把之前做的和遇到的问题做了一个总结。

To migrate existing Android projects, simply import them using Android Studio:

In Android Studio, close any projects currently open. You should see theWelcome to Android Studio window.

Click Import Non-Android Studio project.

Locate the project you exported from Eclipse, expand it, select the build.gradle file and click OK.

In the following dialog, leave Use gradle wrapper selected and click OK. (You do not need to specify the Gradle home.)

Android Studio properly updates the project structure and creates the appropriate Gradle build file.

官方android studio文档在http://developer.android.com/tools/studio/index.html

总结

本人也是AS新手,之前一直用eclipse,遇到问题基本上靠google。文中有不妥之处请指正,谢谢。在此留下小弟的android交流群:311536202。有问题希望在群里面讨论,共同学习。

在android开发中ListView是比较常用的组件,它以列表的形式展示具体内容,并且能够根据数据的长度自适应显示,使用adpater与listview捆绑后,有时希望在程序使用过程中能动态的更改listview中显示的数据

使用adpater与listview捆绑后,有时希望在程序使用过程中能动态的更改listview中显示的数据,如何处理?

一、关键代码段

 代码如下 复制代码
private ListView mListView;
    private Button mBtnChange;
    private android.view.View.OnClickListener mCancelClick;
    private ArrayList<String> mStarNameList = new ArrayList<String>();
    private String[] mAnimalNameList = new String[] {"Dog","Cat","Snake","Duck","Bird"};
    private String[] mStarNameList1 = new String[] {"Kobe","James","Durant","Wade","Love"};
    private ArrayAdapter<String> mAdapter;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        this.setCtrlsEventHandler();
        this.mAdapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_checked,mStarNameList);
        this.mListView = (ListView)findViewById(R.id.listView1);
        this.mBtnChange = (Button)findViewById(R.id.button1);
        this.mBtnChange.setOnClickListener(this.mCancelClick);
        this.mStarNameList.add("Kobe");
        this.mStarNameList.add("James");
        this.mStarNameList.add("Durant");
        this.mStarNameList.add("Wade");
        this.mListView.setAdapter(this.mAdapter);
        this.mListView.setChoiceMode(ListView.CHOICE_MODE_SINGLE);
    }
    private boolean mIsMutex = false;
    private void setCtrlsEventHandler()
    {
        this.mCancelClick = new View.OnClickListener()
        {
            @Override
            public void onClick(View v)
            {
                if(mIsMutex)
                {
                    mBtnChange.setText("True");
                    mStarNameList.clear();
                    for(int i=0;i<mAnimalNameList.length;i++)
                        mStarNameList.add(mAnimalNameList[i]);
                    mAdapter.notifyDataSetChanged();
                    mIsMutex = false;
                }
                else
                {
                    mBtnChange.setText("False");
                    mStarNameList.clear();
                    for(int i=0;i<mStarNameList1.length;i++)
                        mStarNameList.add(mStarNameList1[i]);
                    mAdapter.notifyDataSetChanged();
                    mIsMutex = true;
                }
            }
        };
    }

功能实现主要原理:

用ArrayList mStarNameList 给Adapter填充数据,再将listview与adapter捆绑。

当要修改数据时候,只需要对mStarNameList 进行修改,再调用Adapter.notifyDataSetChanged()就可以实现效果。

二、执行效果

image

image

本教程我们来学习一下在Android开发中如何在主页面点击进入子页面,然后子页面再点一下进入主页面,这样可以互相切换,增强用户体验。

软件平台:Windows 7 + Eclipse + SDK

设计思路:

两个页面:mian和ok,每个页面上有一个按键,点击则可以互相切换

源代码:

main.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" 
    > 
<TextView   
    Android:layout_width="fill_parent"  
    Android:layout_height="wrap_content"  
    Android:text="@string/hello" 
    /> 
<Button Android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="下一页面 ">Button> 
LinearLayout> 

 

ok.xml源代码:

 

 代码如下 复制代码

xml version="1.0" encoding="utf-8"?> 
<LinearLayout 
  xmlns:Android="http://schemas.android.com/apk/res/android" 
  Android:layout_width="match_parent" 
  Android:layout_height="match_parent"> 
    <Button Android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="上一页面 " android:id="@+id/button1">Button> 
LinearLayout> 

makechoice源代码:

package com.makechoice; 
 
import Android.app.Activity; 
import Android.os.Bundle; 
import Android.view.View; 
import Android.widget.Button; 
 
public class makechoice extends Activity 

    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState)  
    { 
        super.onCreate(savedInstanceState); 
        setContentView(R.layout.main); 
        Button btn = (Button)findViewById(R.id.button1); 
        btn.setOnClickListener(new Button.OnClickListener() 
        { 
            @Override 
            public void onClick(View v) 
            { 
                jump2ok(); 
            } 
        }); 
    } 
     
    //跳到ok页面  
    public void jump2ok() 
    { 
        setContentView(R.layout.ok); 
        //当有按键按下跳到main页面  
        Button btn = (Button)findViewById(R.id.button1); 
        btn.setOnClickListener(new Button.OnClickListener() 
        { 
            @Override 
            public void onClick(View v) 
            { 
                jump2main(); 
            } 
        }); 
    } 
     
  //跳到main页面  
    public void jump2main() 
    { 
        setContentView(R.layout.main); 
        //当有按键按下跳到ok页面  
        Button btn = (Button)findViewById(R.id.button1); 
        btn.setOnClickListener(new Button.OnClickListener() 
        { 
            @Override 
            public void onClick(View v) 
            { 
                jump2ok(); 
            } 
        }); 
    } 
}

 

运行效果图:

Android开发制作面切换教程

Android开发制作面切换教程

注意:

类R中存放的ID号为当前页面的ID号,所以findViewById函数捕获的控件也为当前页面的控件

[!--infotagslink--]

相关文章

  • php 中file_get_contents超时问题的解决方法

    file_get_contents超时我知道最多的原因就是你机器访问远程机器过慢,导致php脚本超时了,但也有其它很多原因,下面我来总结file_get_contents超时问题的解决方法总结。...2016-11-25
  • php抓取网站图片并保存的实现方法

    php如何实现抓取网页图片,相较于手动的粘贴复制,使用小程序要方便快捷多了,喜欢编程的人总会喜欢制作一些简单有用的小软件,最近就参考了网上一个php抓取图片代码,封装了一个php远程抓取图片的类,测试了一下,效果还不错分享...2015-10-30
  • HTTP 408错误是什么 HTTP 408错误解决方法

    相信很多站长都遇到过这样一个问题,访问页面时出现408错误,下面一聚教程网将为大家介绍408错误出现的原因以及408错误的解决办法。 HTTP 408错误出现原因: HTT...2017-01-22
  • Android子控件超出父控件的范围显示出来方法

    下面我们来看一篇关于Android子控件超出父控件的范围显示出来方法,希望这篇文章能够帮助到各位朋友,有碰到此问题的朋友可以进来看看哦。 <RelativeLayout xmlns:an...2016-10-02
  • ps把文字背景变透明的操作方法

    ps软件是现在非常受大家喜欢的一款软件,有着非常不错的使用功能。这次文章就给大家介绍下ps把文字背景变透明的操作方法,喜欢的一起来看看。 1、使用Photoshop软件...2017-07-06
  • intellij idea快速查看当前类中的所有方法(推荐)

    这篇文章主要介绍了intellij idea快速查看当前类中的所有方法,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2020-09-02
  • Mysql select语句设置默认值的方法

    1.在没有设置默认值的情况下: 复制代码 代码如下:SELECT userinfo.id, user_name, role, adm_regionid, region_name , create_timeFROM userinfoLEFT JOIN region ON userinfo.adm_regionid = region.id 结果:...2014-05-31
  • js导出table数据到excel即导出为EXCEL文档的方法

    复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta ht...2013-10-13
  • mysql 批量更新与批量更新多条记录的不同值实现方法

    批量更新mysql更新语句很简单,更新一条数据的某个字段,一般这样写:复制代码 代码如下:UPDATE mytable SET myfield = 'value' WHERE other_field = 'other_value';如果更新同一字段为同一个值,mysql也很简单,修改下where即...2013-10-04
  • ps怎么制作倒影 ps设计倒影的方法

    ps软件是一款非常不错的图片处理软件,有着非常不错的使用效果。这次文章要给大家介绍的是ps怎么制作倒影,一起来看看设计倒影的方法。 用ps怎么做倒影最终效果&#819...2017-07-06
  • js基础知识(公有方法、私有方法、特权方法)

    本文涉及的主题虽然很基础,在许多人看来属于小伎俩,但在JavaScript基础知识中属于一个综合性的话题。这里会涉及到对象属性的封装、原型、构造函数、闭包以及立即执行表达式等知识。公有方法 公有方法就是能被外部访问...2015-11-08
  • 安卓手机wifi打不开修复教程,安卓手机wifi打不开解决方法

    手机wifi打不开?让小编来告诉你如何解决。还不知道的朋友快来看看。 手机wifi是现在生活中最常用的手机功能,但是遇到手机wifi打不开的情况该怎么办呢?如果手机wifi...2016-12-21
  • PHP 验证码不显示只有一个小红叉的解决方法

    最近想自学PHP ,做了个验证码,但不知道怎么搞的,总出现一个如下图的小红叉,但验证码就是显示不出来,原因如下 未修改之前,出现如下错误; (1)修改步骤如下,原因如下,原因是apache权限没开, (2)点击打开php.int., 搜索extension=ph...2013-10-04
  • Android开发中findViewById()函数用法与简化

    findViewById方法在android开发中是获取页面控件的值了,有没有发现我们一个页面控件多了会反复研究写findViewById呢,下面我们一起来看它的简化方法。 Android中Fin...2016-09-20
  • c#中分割字符串的几种方法

    单个字符分割 string s="abcdeabcdeabcde"; string[] sArray=s.Split('c'); foreach(string i in sArray) Console.WriteLine(i.ToString()); 输出下面的结果: ab de...2020-06-25
  • Android模拟器上模拟来电和短信配置

    如果我们的项目需要做来电及短信的功能,那么我们就得在Android模拟器开发这些功能,本来就来告诉我们如何在Android模拟器上模拟来电及来短信的功能。 在Android模拟...2016-09-20
  • js控制页面控件隐藏显示的两种方法介绍

    javascript控制页面控件隐藏显示的两种方法,方法的不同之处在于控件隐藏后是否还在页面上占位 方法一: 复制代码 代码如下: document.all["panelsms"].style.visibility="hidden"; document.all["panelsms"].style.visi...2013-10-13
  • 连接MySql速度慢的解决方法(skip-name-resolve)

    最近在Linux服务器上安装MySql5后,本地使用客户端连MySql速度超慢,本地程序连接也超慢。 解决方法:在配置文件my.cnf的[mysqld]下加入skip-name-resolve。原因是默认安装的MySql开启了DNS的反向解析。如果禁用的话就不能...2015-10-21
  • 夜神android模拟器设置代理的方法

    夜神android模拟器如何设置代理呢?对于这个问题其实操作起来是非常的简单,下面小编来为各位详细介绍夜神android模拟器设置代理的方法,希望例子能够帮助到各位。 app...2016-09-20
  • C#方法的总结详解

    本篇文章是对C#方法进行了详细的总结与介绍,需要的朋友参考下...2020-06-25