热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

【Android】activity入门

【Android】activity入门-Activity页面一.自定义Activity项目的创建的时候会自动建一个主页面(MainActivity),自己写一个页面替换主页面(Ma

Activity 页面
一. 自定义Activity
项目的创建的时候会自动建一个主页面(MainActivity),自己写一个页面替换主页面(MainActivity)。

步骤:
1.写一个布局.xml
2.写一个.java,继承Activity类并导包
3.在清单文件中注册

Tip:图片命名必须是小写英文+下划线。

二. Activity跳转
1.创建Intent对象,并导包
2.给构造方法传入参数,参数一:当前的页面的名称.this;参数二:要跳转到的页面的名称.class
3.调用startActivity方法传入intent对象作为参数

实例
com/example/test/MainActivity.java

package com.example.test;
import android.app.Activity;
import android.os.Bundle;


public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }

}


com/example/test/MyActivity.java
实现点击图片跳转至MainActivity


package com.example.test;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.ImageView;

public class MyActivity extends Activity {

    private ImageView mImage;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        //设置使用的布局文件
        setContentView(R.layout.activity_my);

        mImage = (ImageView) findViewById(R.id.my_image);
        mImage.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                // 点击控件要做的事情
                // 从MyActivity.this → MainActivity.class
                Intent intent = new Intent(MyActivity.this,MainActivity.class);
                // 调用方法传入参数进行跳转
                startActivity(intent);
            }
        });
    }




}

src/main/AndroidManifest.xml
设置主页面为自定义的MyActivity,并注册该页面




    
        
        
        
            
                

                
            
        
    



layout/activity_main.xml



    




layout/activity_my.xml




    



点击图片跳转

三. Activity传值
使用Intent对象来携带数据进行跳转传值。

实例
com/example/test/MyActivity.java

package com.example.test;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.ImageView;

public class MyActivity extends Activity {

    private ImageView mImage;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_my);

        mImage = (ImageView) findViewById(R.id.my_image);
        mImage.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                // 从MyActivity.this → MainActivity.class
                Intent intent = new Intent(MyActivity.this,MainActivity.class);
                //携带数据跳转传值
                //参数一:数据的名称(键)
                //参数二:数据的值(值)
                intent.putExtra("data", "这是个随便写的数据仅此而已,也支持其他类型");
                startActivity(intent);
            }
        });
    }




}


com/example/test/MainActivity.java

package com.example.test;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.TextView;

public class MainActivity extends Activity {

    private TextView mText;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        mText = (TextView) findViewById(R.id.text1);

        // 取来源的Intent对象(里面携带数据)
        Intent intent = getIntent();
        // 再取出其中的内容,参数是数据的名称(键),返回值是数据的值(值)
        String message = intent.getStringExtra("data");
        // 如果是其他数据类型
//        intent.getIntExtra(name, defaultValue)
//        intent.getDoubleExtra(name, defaultValue)

        // 给上面的文字显示控件对象设置显示的内容
        mText.setText(message);

    }

}



src/main/AndroidManifest.xml
设置主页面为自定义的MyActivity,并注册该页面




    
        
        
        
            
                

                
            
        
    



layout/activity_main.xml



    







    



点击图片跳转

————————————————
版权声明:本文为CSDN博主「SuperSources」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_4565...


推荐阅读
  • 本文讨论了如何优化解决hdu 1003 java题目的动态规划方法,通过分析加法规则和最大和的性质,提出了一种优化的思路。具体方法是,当从1加到n为负时,即sum(1,n)sum(n,s),可以继续加法计算。同时,还考虑了两种特殊情况:都是负数的情况和有0的情况。最后,通过使用Scanner类来获取输入数据。 ... [详细]
  • 本文介绍了使用Java实现大数乘法的分治算法,包括输入数据的处理、普通大数乘法的结果和Karatsuba大数乘法的结果。通过改变long类型可以适应不同范围的大数乘法计算。 ... [详细]
  • 本文介绍了OC学习笔记中的@property和@synthesize,包括属性的定义和合成的使用方法。通过示例代码详细讲解了@property和@synthesize的作用和用法。 ... [详细]
  • Android开发实现的计时器功能示例
    本文分享了Android开发实现的计时器功能示例,包括效果图、布局和按钮的使用。通过使用Chronometer控件,可以实现计时器功能。该示例适用于Android平台,供开发者参考。 ... [详细]
  • Java太阳系小游戏分析和源码详解
    本文介绍了一个基于Java的太阳系小游戏的分析和源码详解。通过对面向对象的知识的学习和实践,作者实现了太阳系各行星绕太阳转的效果。文章详细介绍了游戏的设计思路和源码结构,包括工具类、常量、图片加载、面板等。通过这个小游戏的制作,读者可以巩固和应用所学的知识,如类的继承、方法的重载与重写、多态和封装等。 ... [详细]
  • 本文介绍了使用kotlin实现动画效果的方法,包括上下移动、放大缩小、旋转等功能。通过代码示例演示了如何使用ObjectAnimator和AnimatorSet来实现动画效果,并提供了实现抖动效果的代码。同时还介绍了如何使用translationY和translationX来实现上下和左右移动的效果。最后还提供了一个anim_small.xml文件的代码示例,可以用来实现放大缩小的效果。 ... [详细]
  • VScode格式化文档换行或不换行的设置方法
    本文介绍了在VScode中设置格式化文档换行或不换行的方法,包括使用插件和修改settings.json文件的内容。详细步骤为:找到settings.json文件,将其中的代码替换为指定的代码。 ... [详细]
  • 本文介绍了一个Java猜拳小游戏的代码,通过使用Scanner类获取用户输入的拳的数字,并随机生成计算机的拳,然后判断胜负。该游戏可以选择剪刀、石头、布三种拳,通过比较两者的拳来决定胜负。 ... [详细]
  • 开发笔记:加密&json&StringIO模块&BytesIO模块
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了加密&json&StringIO模块&BytesIO模块相关的知识,希望对你有一定的参考价值。一、加密加密 ... [详细]
  • android listview OnItemClickListener失效原因
    最近在做listview时发现OnItemClickListener失效的问题,经过查找发现是因为button的原因。不仅listitem中存在button会影响OnItemClickListener事件的失效,还会导致单击后listview每个item的背景改变,使得item中的所有有关焦点的事件都失效。本文给出了一个范例来说明这种情况,并提供了解决方法。 ... [详细]
  • Java容器中的compareto方法排序原理解析
    本文从源码解析Java容器中的compareto方法的排序原理,讲解了在使用数组存储数据时的限制以及存储效率的问题。同时提到了Redis的五大数据结构和list、set等知识点,回忆了作者大学时代的Java学习经历。文章以作者做的思维导图作为目录,展示了整个讲解过程。 ... [详细]
  • 本文介绍了如何在给定的有序字符序列中插入新字符,并保持序列的有序性。通过示例代码演示了插入过程,以及插入后的字符序列。 ... [详细]
  • 本文讨论了一个关于cuowu类的问题,作者在使用cuowu类时遇到了错误提示和使用AdjustmentListener的问题。文章提供了16个解决方案,并给出了两个可能导致错误的原因。 ... [详细]
  • 本文详细介绍了Java中vector的使用方法和相关知识,包括vector类的功能、构造方法和使用注意事项。通过使用vector类,可以方便地实现动态数组的功能,并且可以随意插入不同类型的对象,进行查找、插入和删除操作。这篇文章对于需要频繁进行查找、插入和删除操作的情况下,使用vector类是一个很好的选择。 ... [详细]
  • [大整数乘法] java代码实现
    本文介绍了使用java代码实现大整数乘法的过程,同时也涉及到大整数加法和大整数减法的计算方法。通过分治算法来提高计算效率,并对算法的时间复杂度进行了研究。详细代码实现请参考文章链接。 ... [详细]
author-avatar
杨建谦461128
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有