Android简单的登录界面的值传递

        初学Android,这是一个用户登录界面,想把里面的值传递到另一个Activity中,先不说其他,上代码:

        主界面(登录界面的Activity):MainActivity.java

package com.zhoujunwen.widget;

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

public class MainActivity extends Activity {
	//声明按钮Button
	private Button register,cancle;
	//声明ToggleButton
	private ToggleButton marriged;
	//声明单选按钮
	private RadioButton male,female;
	//声明文本编辑框
	private EditText username,password;
	//声明下拉列表
	private Spinner position;
	//声明多选按钮
	private CheckBox reading,swimming;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		//设置Activity页面布局
		setContentView(R.layout.activity_main);
		//通过findViewById获得EditText对象
		username = (EditText)findViewById(R.id.username);
		password = (EditText)findViewById(R.id.password);
		//通过findViewById方法获得RadioButton
		male = (RadioButton)findViewById(R.id.male);
		female =(RadioButton)findViewById(R.id.female);
		//通过findViewById获得ChechBox
		reading =(CheckBox)findViewById(R.id.reading);
		swimming =(CheckBox)findViewById(R.id.swimming);
		//通过findViewById获得ToggleButton实例
		marriged =(ToggleButton)findViewById(R.id.marriged);
		//通过findViewById获得Spinner实例
		position =(Spinner)findViewById(R.id.position);
		//下拉列表选项
		String[] str = {"CEO","CFO","PM"};
		//数组下拉列表适配器
		ArrayAdapter aa= new ArrayAdapter(this,android.R.layout.simple_spinner_item,str);
		//设置下拉列表适配器
		position.setAdapter(aa);

		//通过findViewById方法获得Button的实例
		register = (Button)findViewById(R.id.register);
		cancle   =(Button)findViewById(R.id.cancle);

		//添加按钮的单击事件监听器
		register.setOnClickListener(new OnClickListener(){
			//点击事件方法

			@Override
			public void onClick(View v) {
				// TODO Auto-generated method stub
				Bundle b= new Bundle();
				//在Bundle中添加用户名称和用户密码
				b.putString("username", "用户名称:"+username.getText().toString());
				b.putString("password", "用户密码:"+password.getText().toString());
				//在Bundle中添加性别
				if(male.isChecked()){
					b.putString("gender","性别:男");
				}else{
					b.putString("gender","性别:女");
				}
				String temp= "爱好:";
				if(reading.isChecked()){
					temp+=" ";
					temp+="阅读";
				}
				if(swimming.isChecked())
				{
					temp+=" ";
					temp+="游泳";
				}
				//在Bundle中添加爱好
				b.putString("hobby",temp);
				//在Bundle中添加婚否
				if(marriged.isChecked()){
					b.putString("marriged","婚否:已婚");
				}else{
					b.putString("marriged","婚否:未婚");
				}
				//在Bundle添加职位
				b.putString("position","职位:"+position.getSelectedItem().toString());
				//实例化Intent,跳转到ResultActivity
				Intent intent = new Intent(MainActivity.this,ResultActivity.class);
				//讲Bundle添加到Intent
				intent.putExtra("data", b);
				//启动Activity
				startActivity(intent);
			}
		});

	}

}

        分析:1.Spinner制作下拉列表

        步骤:①获取Spinner的实例

                    ②产生下拉列表数组

                    ③数组适配器

                    ④设置下拉列表适配器

        代码:

        //通过findViewById获得Spinner实例
	position =(Spinner)findViewById(R.id.position);
	//下拉列表选项
	String[] str = {"CEO","CFO","PM"};
	//数组下拉列表适配器
	ArrayAdapter aa= new ArrayAdapter(this,android.R.layout.simple_spinner_item,str);
	//设置下拉列表适配器
	position.setAdapter(aa);

       分析:2.Bundle用于从一个Activity传值到另一个Activity(其实有很多人说,用Intent的putExtra()方法就可以,但是,Bundle的优点在于传递复杂对象的值)

       步骤:①实例化Bundle对象,保存属性

                   ②调用Bundle的putString(key,value)方法,把属性保存到key里面

                   ③实例化Intent,这是Android传递值得信使,没有它不行

                   ④调用Intent的putExtra(key,value),这儿value换成Bundle的实例

                   ⑤启动该Activity。调用方法startActivity(③中实例化Intent的对象)

        代码:

        Bundle b= new Bundle();
	//在Bundle中添加用户名称和用户密码
	b.putString("username", "用户名称:"+username.getText().toString());
	b.putString("password", "用户密码:"+password.getText().toString());
	//在Bundle中添加性别
	if(male.isChecked()){
	b.putString("gender","性别:男");
	}else{
	b.putString("gender","性别:女");
	}
	String temp= "爱好:";
	if(reading.isChecked()){
		temp+=" ";
		temp+="阅读";
	}
	if(swimming.isChecked())
	{
		temp+=" ";
		temp+="游泳";
	}
	//在Bundle中添加爱好
	b.putString("hobby",temp);
	//在Bundle中添加婚否
	if(marriged.isChecked()){
		b.putString("marriged","婚否:已婚");
	}else{
		b.putString("marriged","婚否:未婚");
	}
	//在Bundle添加职位
	b.putString("position","职位:"+position.getSelectedItem().toString());
	//实例化Intent,跳转到ResultActivity
	Intent intent = new Intent(MainActivity.this,ResultActivity.class);
	//讲Bundle添加到Intent
	intent.putExtra("data", b);
	//启动Activity
	startActivity(intent);

        跳转到的页面:ResultActivity.java

package com.zhoujunwen.widget;

import java.util.ArrayList;
import java.util.List;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.ListView;

public class ResultActivity extends Activity{
	//声明ListView
	private ListView listView;

	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		//设置当前Activity界面布局
		setContentView(R.layout.result);
		//通过findViewById方法获得ListView对象
		listView=(ListView)findViewById(R.id.ListView01);
		//获得Intent
		Intent intent = this.getIntent();
		//从Intent中获得Bundle
		Bundle b = intent.getBundleExtra("data");

		//实例化List
		List list = new ArrayList();
		//从Bundle中获得属性,添加到List
		list.add(b.getString("username"));
		list.add(b.getString("password"));
		list.add(b.getString("position"));
		list.add(b.getString("gender"));
		list.add(b.getString("hobby"));
		list.add(b.getString("marriged"));
		//实例化数组适配器
		ArrayAdapter adapter = new ArrayAdapter(this,android.R.layout.simple_list_item_checked,list);
		//为ListView设置适配器
		listView.setAdapter(adapter);
	}
}

需要分析的地方:Intent获取传递到的值

                //获得Intent
		Intent intent = this.getIntent();
		//从Intent中获得Bundle
		Bundle b = intent.getBundleExtra("data");

		//实例化List
		List list = new ArrayList();
		//从Bundle中获得属性,添加到List
		list.add(b.getString("username"));
		list.add(b.getString("password"));
		list.add(b.getString("position"));
		list.add(b.getString("gender"));
		list.add(b.getString("hobby"));
		list.add(b.getString("marriged"));
		//实例化数组适配器
		ArrayAdapter adapter = new ArrayAdapter(this,android.R.layout.simple_list_item_checked,list);
		//为ListView设置适配器
		listView.setAdapter(adapter);

下面是两个布局文件:

Activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >

    <TableLayout
        android:id="@+id/TableLayout01"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:collapseColumns="3"
        android:stretchColumns="1">

        <TableRow
            android:id="@+id/TableRow01"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content">

            <TextView
                android:text="用户名称"
                android:id="@+id/TextView01"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"></TextView>
            <EditText
                android:text=""
                android:id="@+id/username"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"/>
        </TableRow>

        <TableRow
            android:id="@+id/TableRow02"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content">

            <TextView
                android:text="用户密码"
                android:id="@+id/TextView02"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"></TextView>
            <EditText
                android:text=""
                android:id="@+id/password"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"/>
        </TableRow>

         <TableRow
            android:id="@+id/TableRow03"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content">

            <TextView
                android:text="性别"
                android:id="@+id/TextView03"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"></TextView>
            <RadioGroup
                android:id="@+id/gender_g"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content">
                <RadioButton
                    android:text="男"
                    android:id="@+id/male"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"/>
                <RadioButton
                    android:text="女"
                    android:id="@+id/female"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"/>"
            </RadioGroup>
        </TableRow>

         <TableRow
            android:id="@+id/TableRow04"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content">

            <TextView
                android:text="婚否"
                android:id="@+id/TextView04"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"></TextView>
            <ToggleButton
                android:text="@+id/ToggleButton01"
                android:id="@+id/marriged"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"/>
        </TableRow>

         <TableRow
            android:id="@+id/TableRow05"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content">

            <TextView
                android:text="爱好"
                android:id="@+id/hobby"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"></TextView>
            <ChechBox
                android:text="阅读"
                android:id="@+id/reading"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"/>
            <ChechBox
                android:text="游泳"
                android:id="@+id/swimming"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"/>
        </TableRow>

         <TableRow
            android:id="@+id/TableRow06"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content">

            <TextView
                android:text="职务"
                android:id="@+id/TextView05"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"></TextView>
            <Spinner
                android:id="@+id/position"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"/>
        </TableRow>

         <TableRow
            android:id="@+id/TableRow05"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content">
            <Button
                android:text="取消"
                android:id="@+id/cancle"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"/>
            <Button
                android:text="注册"
                android:id="@+id/register"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"/>
        </TableRow>
    </TableLayout>

</LinearLayout>

ResultActivity.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

    <ListView android:id="@+id/ListView01"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"/>"

</LinearLayout>
时间: 2024-10-04 13:52:37

Android简单的登录界面的值传递的相关文章

安卓中登录界面的用户名传递到下一个界面

问题描述 安卓中登录界面的用户名传递到下一个界面 大家帮忙看看啊 怎么传递loginName啊 解决方案 感觉很奇怪.你的Bundle里面的数据是传到并不是MyCarActivity,那应该是没办法从MainActivity里面读取到Bundle里面的LoginName的.你应该要把MyCarActivity改为MainActivity吧 解决方案二: 通过intent,打开一个activity,都需要这个的 解决方案三: 直接通过intent去put值,对方接收时,用getintent获取并g

Android实现QQ登录界面遇到问题及解决方法_Android

先给大家炫下效果图: 首先过程中碰到的几个问题: 1.对 EditText 进行自定义背景 2.运行时自动 EditText 自动获得焦点 3.在获得焦点时即清空 hint ,而不是输入后清空 4.清空按钮的出现时机(在得到焦点并且有输入内容时) ......... --- 这些问题都有一一解决 --- 以下是代码: 布局 fragment_main(问题2) <!-- android:focusable="true" android:focusableInTouchMode=&

delphi 7中怎么给图书管理系统加上一个简单的登录界面,只要用户名密码的输入,怎么写?

问题描述 delphi 7中怎么给图书管理系统加上一个简单的登录界面,只要用户名密码的输入,怎么写? delphi 7中怎么给图书管理系统加上一个简单的登录界面,只要用户名密码的输入,怎么写? 解决方案 http://blog.sina.com.cn/s/blog_4b25da9d01009l96.html

ExtJs中简单的登录界面制作方法_extjs

一 首先请看图片 二 登陆界面Ext代码 复制代码 代码如下: /// <reference path="http://http://www.jb51.net/Resources/ExtJs/vswd-ext_2.0.2.js" /> //加载提示框 Ext.QuickTips.init(); //创建命名空间 Ext.namespace('XQH.ExtJs.Frame'); //主应用程序 XQH.ExtJs.Frame.app = function() { } Ext

请问这个简单的登录界面为什么跳转老错,就是登录账户和密码都对的还跳转不到指定页面?

问题描述 代码://///////////////////////////////////////LoginServlet.javapackage login;import java.io.IOException;import java.io.PrintWriter;import java.util.ArrayList;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.

Android登录界面的实现代码分享_Android

最近由于项目需要,宝宝好久没搞Android啦,又是因为项目需要,现在继续弄Android,哎,说多了都是泪呀,别的不用多说,先搞一个登录界面练练手,登录界面可以说是Android项目中最常用也是最基本的,如果这个都搞不定,那可以直接去跳21世纪楼啦. 废话不多说,先上效果图了,如果大家感觉还不错,请参考实现代码吧. 相信这种渣渣布局对很多人来说太简单啦,直接上布局: <RelativeLayout xmlns:android="http://schemas.android.com/apk

Android登录界面的实现代码分享

最近由于项目需要,宝宝好久没搞Android啦,又是因为项目需要,现在继续弄Android,哎,说多了都是泪呀,别的不用多说,先搞一个登录界面练练手,登录界面可以说是Android项目中最常用也是最基本的,如果这个都搞不定,那可以直接去跳21世纪楼啦. 废话不多说,先上效果图了,如果大家感觉还不错,请参考实现代码吧. 相信这种渣渣布局对很多人来说太简单啦,直接上布局: <RelativeLayout xmlns:android="http://schemas.android.com/apk

Android QQ登录界面绘制代码_Android

先看看效果图: 首先过程中碰到的几个问题:  1.对 EditText 进行自定义背景  2.运行时自动 EditText 自动获得焦点  3.在获得焦点时即清空 hint ,而不是输入后清空  4.清空按钮的出现时机(在得到焦点并且有输入内容时)  ---  这些问题都有一一解决 --- 以下是代码:  布局 fragment_main(问题2) <!-- android:focusable="true" android:focusableInTouchMode="t

Photoshop设计简洁优雅的登录界面

教程旨在教大家使用Photoshop创建一个简单的登录界面.只需一些简单技巧,你也可以设计出一个漂亮的登录界面.界面的背景色使用了几种不同的灰色色系,此举可最大程度保持整个界面的简洁和优雅. 本教程简单易学,适合于初学者. PSD文件新浪微盘下载地址:http://vdisk.weibo.com/s/hyZm8/1352365789 登录界面 步骤1 新建一个800(H)x600(W)像素的文档.当然也可根据自己的需求新建.接下来,使用圆角矩形工具(U)建立一个320×210像素的圆角矩形,并用