`
umbrellall1
  • 浏览: 145507 次
  • 性别: Icon_minigender_1
  • 来自: 成都
文章分类
社区版块
存档分类
最新评论

第一章:初入Android大门(不同的Activity之间的数据传递)

阅读更多
效果










来设置第一个Activity
main.xml

<?xml version="1.0" encoding="utf-8"?>
<AbsoluteLayout
 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/heigths"
android:layout_width="129px"
android:layout_height="wrap_content"
android:textSize="18sp"
android:layout_x="122px"
android:layout_y="141px"
>
</EditText>
<RadioGroup android:id="@+id/sexs"
        android:layout_width="wrap_content"
		android:layout_x="122px"
		android:orientation="horizontal"
		android:layout_y="87px"
        android:layout_height="wrap_content">
<RadioButton
android:id="@+id/boy"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="&#30007;"
>
</RadioButton>
<RadioButton
android:id="@+id/gril"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="&#22899;"
>
</RadioButton>
</RadioGroup>
<TextView
android:id="@+id/sexText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="&#24615;&#21035;:"
android:layout_x="51px"
android:layout_y="102px"
>
</TextView>
<TextView
android:id="@+id/heigth"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="&#36523;&#39640;:"
android:layout_x="51px"
android:layout_y="152px"
>
</TextView>
<Button
android:id="@+id/count"
android:layout_width="74px"
android:layout_height="wrap_content"
android:text="&#35745;&#31639;"
android:layout_x="140px"
android:layout_y="203px"
>
</Button>
</AbsoluteLayout>


设置第二个Activity新建一个layout2.xml文件

<?xml version="1.0" encoding="utf-8"?>
<AbsoluteLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
<TextView
android:id="@+id/text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="&#24615;&#21035;:"
android:layout_x="74px"
android:layout_y="106px"
>
</TextView>


</AbsoluteLayout>


AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="transfer.data"
      android:versionCode="1"
      android:versionName="1.0">
    <application android:icon="@drawable/icon" android:label="@string/app_name">
        <activity 
        		  android:name=".TransferData"
                  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=".TransferData2"></activity>
    </application>
</manifest> 


在来看看R.java
/* AUTO-GENERATED FILE.  DO NOT MODIFY.
 *
 * This class was automatically generated by the
 * aapt tool from the resource data it found.  It
 * should not be modified by hand.
 */

package transfer.data;

public final class R {
    public static final class attr {
    }
    public static final class drawable {
        public static final int icon=0x7f020000;
    }
    public static final class id {
        public static final int boy=0x7f050003;
        public static final int count=0x7f050007;
        public static final int gril=0x7f050004;
        public static final int heigth=0x7f050006;
        public static final int heigths=0x7f050001;
        public static final int sexText=0x7f050005;
        public static final int sexs=0x7f050002;
        public static final int text=0x7f050000;
    }
    public static final class layout {
        public static final int layout2=0x7f030000;
        public static final int main=0x7f030001;
    }
    public static final class string {
        public static final int app_name=0x7f040001;
        public static final int hello=0x7f040000;
    }
}

好了配置完了接下来开始写代码了

package transfer.data;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.RadioButton;

public class TransferData extends Activity {
    /** Called when the activity is first created. */
	private Button bt;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        /**载入main.xml*/
        setContentView(R.layout.main);
        /**找到计算按钮*/
        bt=(Button)findViewById(R.id.count);
        /**设置按钮的监听事件*/
        bt.setOnClickListener(new Button.OnClickListener(){
        	public void onClick(View v){
        		/**找到文本框*/
        		EditText et=(EditText)findViewById(R.id.heigths);
        		/**将文本框的值转换为 double类型的*/
        		double height=Double.parseDouble(et.getText().toString());
        		String sex="";
        		/**找到单选按钮*/
        		RadioButton rb1=(RadioButton)findViewById(R.id.boy);
        		/**判断是否被选中*/
        		if(rb1.isChecked()){
        			sex="男";
        		}else{
        			sex="女";
        		}
        		/**实例化Intent对像,并指定传递的class*/
        		Intent intent=new Intent();
        		intent.setClass(TransferData.this, TransferData2.class);
        		
        		/**实例化Bundle对像,把将要传递的数据以键值对的形式添加进去*/
        		Bundle bundle=new Bundle();
        		/**添加的是Double类型的数值*/
        		bundle.putDouble("height", height);
        		/**添加的是String类型的数值*/
        		bundle.putString("sex", sex);
        		/**将设置好值的Bundle对象添加进Intent*/
        		intent.putExtras(bundle);
        		/**调用TransferData2 传递开始*/
        		startActivity(intent);
        	}
        });
    }
}




package transfer.data;

import java.text.DecimalFormat;
import java.text.NumberFormat;

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

public class TransferData2 extends Activity {
	public void onCreate(Bundle savedInstanceState){
        super.onCreate(savedInstanceState);
        /**载入layout*/
        setContentView(R.layout.layout2);
        /**获取 Bundle对象*/
        Bundle bundle=this.getIntent().getExtras();
        /**获取 传递过来的值也就是性别*/
        String sex=bundle.getString("sex");
        /**获取 传递过来的值身高*/
        double height=bundle.getDouble("height");
        /**通过id找到TextView组件对象*/
        TextView text=(TextView)findViewById(R.id.text);
        /**设置TextView的文本值*/
        text.setText("性别:"+sex+"\n身高:"+height+"\n标准体重:"+getWeight(sex, height));
	}
	
	public String format(double num){
		NumberFormat formatter=new DecimalFormat("0.00");
		String count=formatter.format(num);
		return count;
	}
	/**计算男女标准体重*/
	public String getWeight(String sex,double height){
		String weight="";
		weight=format((height-80)*0.7);
		if(sex.equals("男")){
			weight=format((height-70)*0.7);
		}
		return weight;
	}
}


  • 大小: 8.4 KB
  • 大小: 9.1 KB
  • 大小: 4.8 KB
分享到:
评论

相关推荐

    Android-Activity之间数据传递的多种方式

    在Android应用开发中,Activity是用户界面的基本单元,它们之间的数据传递是十分常见的操作。本文将详细介绍Android中Activity之间数据传递的多种方式及其适用场景。 一、Intent传递数据 Intent是Android系统中...

    在不同Activity之间传递数据的四种常用方法

    在Android中传递数据的方法非常多,本次介绍4中比较常用的数据传递方法: 1.通过Intent传递数据 2.通过静态变量(static)传递数据 3.通过剪贴板(Clipboard)传递数据 4.通过全局对象传递数据 在...

    android Activity之间数据传递 Parcelable和Serializable接口的使用

    android Activity之间数据传递 Parcelable和Serializable接口的使用的具体实例代码,详情请看&gt;http://blog.csdn.net/js931178805/article/details/8268144

    用handler在两个activity之间传递数据

    资源包括如何在一个activity A里激活另一个activity B。 然后在两个activity之间用handler传输数据。在activity A里定义全局变量handler,用sendMessage来发数据,在handler里数据以消息队列的方式发送。

    Android开发 猴子摘桃小项目——学习Activity之间的数据回传

    1. **Intent**: Intent是Android系统中用于启动Activity或Service的意图对象,同时也被用于在Activity之间传递数据。在"猴子摘桃"项目中,我们可能通过Intent将数据(如桃子的数量)从一个Activity传递到另一个...

    Fragment与Activity使用Bundle传递数据

    在实际开发中,经常需要在Fragment和Activity之间传递数据,这通常是通过Bundle对象来实现的。Bundle类在Android中扮演着数据容器的角色,它允许我们存储键值对的数据,并在不同组件之间共享。 首先,了解Activity...

    Android Fragment与Activity之间的数据交换(Fragment从Activity获取数据)

    一、Fragment从Activity获取数据(本文章只介绍第一种); 二、Activity从Fragment获取数据; 三、Fragment之间获取数据。 实现效果: 从Activity传递数据到两个Fragment中,Fragment获取数据后,展示出来。

    JS调用Android方法,向Android方法传递json数据

    本文将深入探讨如何使用JavaScript调用Android的方法,并传递JSON数据,以实现两者之间的高效通信。 首先,我们需要了解`Android WebView`。WebView是Android系统提供的一种组件,它能够加载并显示网页内容,就像是...

    android两个activity相互传值

    在实际的开发过程中,常常需要在两个Activity之间传递数据,比如从一个Activity启动另一个Activity并传递一些参数,然后在新的Activity中处理这些参数,甚至在完成后将结果返回给原来的Activity。本文将详细讲解如何...

    Fragment与Activity之间通信实例

    本实例将深入探讨这一主题,讲解如何在Fragment和Activity之间有效地传递数据和执行操作。 首先,让我们了解Fragment和Activity的基本结构。Activity是应用程序的主要组件,它承载着UI和业务逻辑。Fragment则是一个...

    详谈android界面之间数据的传递

    不同界面之间,数据的传递是很常用的一个操作,这种数据的携带也是很简单的。 效果: 跳转后: 这个例子很简单,但是我们把第一个界面输入的姓名张三顺利传递到了第二个界面 附代码如下: 主界面: package ...

    Android使用Activity用作弹出式对话框

    在Android开发中,有时我们需要创建一个弹出式对话框来与用户进行交互,但不同于常见的`Dialog`类,我们可以利用`Activity`来实现这一功能。这种方式适用于需要更复杂交互或者自定义布局的情况。本文将详细讲解如何...

    Android两个子线程之间的通信

    3. **BroadcastReceiver**:广播接收器可以在不同组件之间传递消息,包括子线程。创建一个自定义Intent,然后在需要通信的线程中发送和接收。不过,这种方式开销较大,通常用于全局事件的传递,而非特定线程间的通信...

    android 两个activity 翻转动画切换

    在Android开发中,Activity之间的切换可以通过自定义动画来实现更加丰富的视觉效果,比如翻转动画。这不仅可以提高用户的交互体验,还能为应用增添独特的风格。本文将深入探讨如何实现两个Activity之间的翻转动画...

    android activity右进右出动画

    注意,这两个动画可以在同一个Activity的生命周期内同时使用,也可以分别在不同的Activity之间使用。 4. **自定义动画效果** Android还支持更复杂的动画,如缩放、旋转等,开发者可以通过组合多个动画(使用`...

    android中activity跳转的几种动画

    android:name=".YourActivity" android:enterAnim="@anim/slide_in_left" android:exitAnim="@anim/slide_out_right" /&gt; ``` 这里的`slide_in_left`和`slide_out_right`是位于res/anim目录下的XML动画文件,分别...

    Android Fragment与Fragment之间数据获取

    上一篇介绍了,Fragment从Activity获取数据。这篇介绍两个Fragment之间的如何获取数据。 MainActivity包含有两个Fragment,LeftFragment和RightFragment,如果Leftfragment想要获取RightFragment中的数据,那么首先...

    android:scheme 通过uri跳转到APP应用指定Activity

    在Android开发中,`android:scheme` 是一个关键的概念,用于构建自定义URL协议,使得外部应用或系统可以通过特定的URI来启动我们的应用程序中的特定Activity。这个特性在很多场景下非常有用,比如分享链接、广告点击...

    在一个Activity中更新操作另一个Activity的内容

    BroadcastReceiver是Android的一种广播机制,它可以在应用程序的不同组件之间传递数据和事件。当一个Activity需要更新另一个Activity的内容时,可以发送一个自定义广播,被更新的Activity注册监听这个广播,并在接收...

    Activity间的数据传递

    Activity间的数据传递是一个演示Android不同Activity间的数据传递的例子,用到的控件很多EditText TextView SeekBar RadioGroup RadioButton ImageButton Button 都有涉及,属于最初级的例子,适合新手朋友了解学习...

Global site tag (gtag.js) - Google Analytics