文档章节

android之网格布局和线性布局实现注册页面

 我的梦想fly
发布于 2014/12/06 19:37
字数 1078
阅读 54
收藏 0

android之网格布局和线性布局实现注册页面

(注意:1、再用weight的时候,各个组件要设置宽度为0dp,高度也要设置,2、即使没有设置weight,再用linear布局时,比如view和button都要设置宽度高度。3、如果出现运行错误,可以先检查哪个组件没设置高度)

:values/strings.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>


    <string name="app_name">Day_02_07</string>
    <string name="hello_world">Hello world!</string>
    <string name="action_settings">Settings</string>
<string-array name="citys">
   <item>北京</item>
   <item>天津</item>
   <item>上海</item>
   <item>重庆</item>
</string-array>
</resources>

主页面:

layout/activity_main.xml

<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:orientation="vertical">

    <Button 
        android:id="@+id/btn_linearlayout"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="用线性布局实现注册"
        android:onClick="linearLayout"/>
     <Button 
        android:id="@+id/btn_relativelayout"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="用相对布局实现注册"/>
     <Button 
        android:id="@+id/btn_tablelayout"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="用表格布局实现注册"/>
     <Button 
        android:id="@+id/btn_Gridlayout"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="用网格布局实现注册"
        android:onClick="girdLayout"/>
   


</LinearLayout>

网格布局:

layout/grid_layout.xml

<?xml version="1.0" encoding="utf-8"?>
<GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent" 
    android:orientation="horizontal"
    android:columnCount="5">
    
    <TextView 
        android:text="用 户 名"/>
<EditText 
   android:hint="2-10个字符"
   android:layout_columnSpan="4"
   android:layout_gravity="fill_horizontal"/>
<TextView 
        android:text="输入密码"/>
<EditText 
   android:hint="2-10个字符"
   android:layout_columnSpan="4"
   android:password="true"
   android:layout_gravity="fill_horizontal"/>
<TextView 
        android:text="确认密码"/>
<EditText 
   android:hint="2-10个字符"
   android:layout_columnSpan="4"
   android:password="true"
   android:layout_gravity="fill_horizontal"/>
<TextView 
   android:layout_marginTop="10dp"
   android:text="选择性别"/>
<RadioGroup 
   android:layout_marginLeft="10dp"
   android:layout_columnSpan="4"
   android:layout_gravity="fill_horizontal"
   android:orientation="horizontal">
   <RadioButton 
       android:id="@+id/rbMale"
       android:text="男"
       android:checked="true"/>
   <RadioButton 
       android:id="@+id/rbFemale"
       android:text="女"/>
</RadioGroup>
<TextView 
   android:text="所在地"/>
<Spinner 
   android:layout_columnSpan="4"
   android:entries="@array/citys"/>
<TextView 
   android:layout_marginTop="10dp"
   android:text="选择爱好"/>
<RadioGroup 
   android:layout_columnSpan="4"
   android:orientation="horizontal">
   <CheckBox 
       android:text="读书"
       android:checked="true"/>
   <CheckBox 
       android:text="旅游"/>
   <CheckBox 
       android:text="电玩"/>
</RadioGroup>
<Button 
   android:visibility="invisible"/>
<Button 
   android:text="注册"
   android:textColor="#fff"
   android:padding="3dp"
   android:drawableLeft="@drawable/login32x32"
   android:background="@drawable/btn_bg"/>
<Button 
   android:visibility="invisible"/>
<Button 
   android:text="退出"
   android:textColor="#fff"
   android:padding="3dp"
   android:drawableLeft="@drawable/exit32x32"
   android:background="@drawable/btn_bg"/>
<Button 
   android:visibility="invisible"/>
<Button 
   android:text="返回"
   android:layout_gravity="bottom|fill_horizontal"
   android:layout_columnSpan="5"
   />
</GridLayout>

效果:


线性布局

layout/linear_layout.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"
    android:orientation="vertical">
    
 <LinearLayout 
     android:layout_width="match_parent"
    android:layout_height="wrap_content" 
    android:orientation="horizontal">
     <TextView 
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:text="用户名:"/>
     <EditText 
         android:layout_width="0dp"
         android:layout_height="wrap_content"
         android:layout_weight="1"
         android:hint="请输入1-10个字符"/>
 </LinearLayout>
 
   <LinearLayout 
     android:layout_width="match_parent"
    android:layout_height="wrap_content" 
    android:orientation="horizontal">
     <TextView 
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:text="密         码:"/>
     <EditText 
         android:layout_width="0dp"
         android:layout_height="wrap_content"
         android:layout_weight="1"
         android:hint="请输入1-10个字符"
         android:password="true"/>
 </LinearLayout>
 
 <LinearLayout 
     android:layout_width="match_parent"
    android:layout_height="wrap_content" 
    android:orientation="horizontal">
     <TextView 
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:text="确认密码:"/>
     <EditText 
         android:layout_width="0dp"
         android:layout_height="wrap_content"
         android:layout_weight="1"
         android:hint="请输入1-10个字符"
         android:password="true"/>
 </LinearLayout>
 
 <LinearLayout 
     android:layout_width="match_parent"
    android:layout_height="wrap_content" 
    android:orientation="horizontal">
     <TextView 
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:text="选择性别:"/>
    <RadioGroup 
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:orientation="horizontal"
        >
        <RadioButton 
            android:id="@+id/rbMale"
            android:text="男"
            android:checked="true"/>
        <RadioButton 
            android:id="@+id/rbreMale"
            android:text="女"/>
    </RadioGroup>
 </LinearLayout>
 
 <LinearLayout 
     android:layout_width="match_parent"
    android:layout_height="wrap_content" 
    android:orientation="horizontal">
     <TextView 
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:text="城市:"/>
   <Spinner android:layout_width="0dp"
       android:layout_height="wrap_content"
       android:layout_weight="1"
       android:entries="@array/citys"
       />
 </LinearLayout>
 
 <LinearLayout 
     android:layout_width="match_parent"
    android:layout_height="wrap_content" 
    android:orientation="horizontal">
     <TextView 
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:text="兴趣爱好:"/>
    <RadioGroup 
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:orientation="horizontal"
        >
       <CheckBox 
           android:text="读书"
           android:checked="true"/>
       <CheckBox 
           android:text="旅游"
           />
       <CheckBox 
           android:text="打电子"
           />
    </RadioGroup>
 </LinearLayout>
 <LinearLayout 
     android:layout_width="match_parent"
    android:layout_height="wrap_content" 
    android:orientation="horizontal"
    >
   <Button 
       android:layout_width="0dp"
       android:layout_height="wrap_content"
       android:visibility="invisible"
       android:layout_weight="1"
       />
    <Button
        android:id="@+id/btRegister"
         android:text="注册"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:drawableLeft="@drawable/login32x32"
        android:background="@drawable/btn_bg"
        />
   <Button 
       android:layout_width="0dp"
       android:layout_height="wrap_content"
       android:visibility="invisible"
       android:layout_weight="1"
       />
     <Button 
         android:id="@+id/btEixt"
         android:text="退出"
         android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:drawableLeft="@drawable/exit32x32"
        android:background="@drawable/btn_bg"
        />
      <Button 
       android:layout_width="0dp"
       android:layout_height="wrap_content"
       android:visibility="invisible"
       android:layout_weight="1"
       />
 </LinearLayout>
<LinearLayout 
     android:layout_width="match_parent"
    android:layout_height="match_parent" 
    android:orientation="horizontal"
    >   
<Button 
        android:text="返回"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="bottom|fill_horizontal"
        android:background="@drawable/btn_bg"
        
        />  
 </LinearLayout>
</LinearLayout>

效果:


java代码:

com.example.day_02_07.MainActivity

package com.example.day_02_07;


import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;


public class MainActivity extends ActionBarActivity {


@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
//处理网格布局按钮的点击事件
public void girdLayout(View v){
Log.i("main",((Button)v).getText().toString());
setContentView(R.layout.grid_layout);
}
//处理线性布局按钮的点击事件
public void linearLayout(View v){
Log.i("main",((Button)v).getText().toString());
setContentView(R.layout.linear_layout);
}
}

主页效果:



© 著作权归作者所有

粉丝 1
博文 43
码字总数 20377
作品 0
西城
私信 提问
Android学习笔记(二) 布局方式的介绍

Android应用的开发的一项内容就是用户界面开发了。Android提供了大量功能丰富的UI组件。Android的界面是由布局和组件协同完成的。 Android所有UI组件都继承了View类,View类有一个重要的子类...

半夏alvin
2014/03/05
686
0
Android 的几种布局方式及实践

我们对Android应用程序运行原理及布局文件可谓有了比较深刻的认识和理解,并且用“Hello World!”程序来实践证明了。在继续深入Android开发之旅之前,有必要解决前两篇中没有介绍的遗留问题...

sumpower
2014/02/25
61
0
Android布局

View的布局显示方式有下面几种:线性布局(Linear Layout)、相对布局(Relative Layout)、表格布局(Table Layout)、网格视图(Grid View)、标签布局(Tab Layout)、列表视图(List Vi...

JavaGG
2011/06/29
16.9K
17
Android零基础入门第81节:Activity数据传递

在Android开发中,经常要在Activity之间传递数据。前面也学习了Activity和Intent相关基础,接下来一起来学习Activity的数据传递。 一、简介 通过前面的学习知道,Intent可以用来开启Activit...

鑫鱻
2017/10/23
46
0
Android Activity---实现一个用户界面

一个Activity的用户界面是通过View树来提供的---这些View对象继承View类。每个View在Activity的窗口中都控制一个特定的的矩形区域,并且能够响应用户的操作。例如,一个按钮在用户点击它时,...

长平狐
2012/10/16
452
0

没有更多内容

加载失败,请刷新页面

加载更多

学习记录(day05-标签操作、属性绑定、语句控制、数据绑定、事件绑定、案例用户登录)

[TOC] 1.1.1标签操作v-text&v-html v-text:会把data中绑定的数据值原样输出。 v-html:会把data中值输出,且会自动解析html代码 <!--可以将指定的内容显示到标签体中--><标签 v-text=""></......

庭前云落
26分钟前
3
0
支撑微博亿级社交平台,小白也能玩转Redis集群(实战篇)

上篇文章《支撑微博亿级社交平台,小白也能玩转Redis集群(原理篇)》介绍了Redis集群相关原理,这篇文章将介绍Redis Cluster集群的搭建、配置,运维、扩容等具体操作 集群搭建 2018年10月 Re...

分布式系统架构
27分钟前
5
0
JVM -- 垃圾回收算法及分代垃圾收集器

Hello,今天记录下 Java虚拟机中的其中一个重点知识 --> 垃圾回收算法及分代垃圾收集器。 一起学习,一起进步。继续沉淀,慢慢强大。希望这文章对您有帮助。若有写的不好的地方,欢迎评论给建...

猫狗熊
41分钟前
3
0
ERC-777以太坊新代币标准解读

ERC777是一个新的高级代币标准,可以视为ERC20的升级版本,因此它解决了ERC20以及ERC223存在的一些问题,开发者可以根据自己的具体需求进行选型。 1、使用ERC820进行合约注册 有别于ERC20的自...

汇智网教程
今天
8
0
代理模式之JDK动态代理 — “JDK Dynamic Proxy“

动态代理的原理是什么? 所谓的动态代理,他是一个代理机制,代理机制可以看作是对调用目标的一个包装,这样我们对目标代码的调用不是直接发生的,而是通过代理完成,通过代理可以有效的让调...

code-ortaerc
今天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部