美文网首页
Android开发的几种常见布局

Android开发的几种常见布局

作者: Courage_SC | 来源:发表于2016-04-10 19:05 被阅读663次

    目前正在从事iOS开发,对于安卓就是大学的时候自学了点,做过几个小的项目,软件外包大赛、计算机设计大赛、移动应用大赛都拿过奖项,呵呵。。。现在回想起来以前大学做的安卓比赛是多么的幼稚。 从现在开始我要从头一步一步回顾安卓,作为一个前端开发工程师要崛起了。。。。哈哈。。。请大家支持的我创作,多提提宝贵的意见。
    步入正题!!!!!!!
    关于Android的几种常见的布局其实很简单的,是一个入门的关键。主要的线性布局(所有的ui控件都是 以一条线 线性的 方式去 排列的)、相对布局(所有的控件 都是 以相对的位置去放置)、其次表格布局、帧布局(就是页面的叠加,播放器里经常用到)、绝对布局(已废弃)。
    关于布局就是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" >
        
    <EditText 
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"/>
        <LinearLayout 
            android:layout_width="fill_parent"
            android:layout_height="wrap_content">
            <Button 
                android:text="C"
                android:textColor="#FFC928"
                android:layout_width="0dip"
                android:layout_weight="1"
                android:layout_height="wrap_content"/>
           <Button 
                android:text="DEL"
                android:layout_width="0dip"
                android:layout_weight="1"
                android:layout_height="wrap_content"/>
           <Button 
                android:text="÷"
                android:layout_width="0dip"
                android:layout_weight="1"
                android:layout_height="wrap_content"/>
           <Button 
                android:text="×"
                android:layout_width="0dip"
                android:layout_weight="1"
                android:layout_height="wrap_content"/>
        
                  
        </LinearLayout>
         <LinearLayout 
            android:layout_width="fill_parent"
            android:layout_height="wrap_content">
            <Button 
                android:text="7"
                android:layout_width="0dip"
                android:layout_weight="1"
                android:layout_height="wrap_content"/>
           <Button 
                android:text="8"
                android:layout_width="0dip"
                android:layout_weight="1"
                android:layout_height="wrap_content"/>
           <Button 
                android:text="9"
                android:layout_width="0dip"
                android:layout_weight="1"
                android:layout_height="wrap_content"/>
           <Button 
                android:text="—"
                android:layout_width="0dip"
                android:layout_weight="1"
                android:layout_height="wrap_content"/>
        
                  
        </LinearLayout>
         <LinearLayout 
            android:layout_width="fill_parent"
            android:layout_height="wrap_content">
            <Button 
                android:text="4"
                android:layout_width="0dip"
                android:layout_weight="1"
                android:layout_height="wrap_content"/>
           <Button 
                android:text="5"
                android:layout_width="0dip"
                android:layout_weight="1"
                android:layout_height="wrap_content"/>
           <Button 
                android:text="6"
                android:layout_width="0dip"
                android:layout_weight="1"
                android:layout_height="wrap_content"/>
           <Button 
                android:text="+"
                android:layout_width="0dip"
                android:layout_weight="1"
                android:layout_height="wrap_content"/>
        
                  
        </LinearLayout>
        <LinearLayout 
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal">
           <LinearLayout 
              android:layout_width="0dip"
              android:layout_weight="3"
              android:layout_height="wrap_content"
              android:orientation="vertical" > 
             <LinearLayout 
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:orientation="horizontal"  >
                  <Button 
                  android:text="1"
                  android:layout_width="0dip"
                  android:layout_weight="1"
                  android:layout_height="wrap_content"/>
                  <Button 
                  android:text="2"
                  android:layout_width="0dip"
                  android:layout_weight="1"
                  android:layout_height="wrap_content"/>
                 <Button 
                  android:text="3"
                  android:layout_width="0dip"
                  android:layout_weight="1"
                  android:layout_height="wrap_content"/>
              </LinearLayout>
              <LinearLayout 
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:orientation="horizontal"  >
                  <Button 
                  android:text="0"
                  android:layout_width="0dip"
                  android:layout_weight="2"
                  android:layout_height="wrap_content"/>
                  <Button 
                  android:text="."
                  android:layout_width="0dip"
                  android:layout_weight="1"
                  android:layout_height="wrap_content"/>
                
              </LinearLayout>
           </LinearLayout>
           <Button 
               android:text="="
               android:background="#F07A23"
               android:layout_width="0dip"
               android:layout_weight="1"
               android:gravity="bottom|right"
               android:layout_height="fill_parent"/>
        </LinearLayout>
    
        <ToggleButton
            android:id="@+id/toggleButton1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="ToggleButton" />
    </LinearLayout>
    

    线性布局与相对布局混合使用做一个设置界面

    <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:background="#113965"
        android:orientation="vertical"
        tools:context=".MainActivity" >
    
        <RelativeLayout
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:background="#000000" >
    
            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_centerVertical="true"
                android:layout_marginLeft="10dp"
                android:text="自动旋转屏幕"
                android:textColor="#ffffff" />
    
            <CheckBox
                android:id="@+id/cbx"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentRight="true"
                android:layout_centerVertical="true" />
        </RelativeLayout>
    
        <View
            android:layout_width="fill_parent"
            android:layout_height="1dip"
            android:background="#ff0000" />
        
        <SeekBar
            android:id="@+id/seekBar"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:max="100"
            android:visibility="visible" />
    </LinearLayout>
    

    网格布局做的类似qq的登入页面

    <?xml version="1.0" encoding="utf-8"?>
    <TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent" >
        <TableRow 
            android:layout_width="fill_parent"
            android:layout_height="wrap_content">
            <TextView 
                android:text="请输入QQ"
                android:layout_width="0dip"
                android:layout_weight="2"
                android:layout_height="wrap_content"/>
            <EditText 
                android:layout_width="0dip"
                android:layout_weight="5"
                android:layout_height="wrap_content"/>
            
            
        </TableRow>
        <TableRow 
            android:layout_width="fill_parent"
            android:layout_height="wrap_content">
            <TextView 
                android:text="请输入QQ密码"
                android:layout_width="0dip"
                android:layout_weight="2"
                android:layout_height="wrap_content"/>
            <EditText 
                android:layout_width="0dip"
                android:layout_weight="5"
                android:layout_height="wrap_content"/>
            
            
        </TableRow>
        <Button 
            android:text="登入"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"/>
    </TableLayout>
    
    

    绝对布局做的类似游戏鼠标的界面

    <?xml version="1.0" encoding="utf-8"?>
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent" >
    
        <Button
            android:id="@+id/middle"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_centerHorizontal="true"
            android:layout_centerInParent="true"
            android:layout_centerVertical="true"
            android:text="中间" />
    
        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_above="@+id/middle"
            android:layout_centerHorizontal="true"
            android:text="上" />
    
        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@id/middle"
            android:layout_centerHorizontal="true"
            android:text="下" />
    
        <Button
            android:id="@+id/button1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_centerVertical="true"
            android:layout_toLeftOf="@id/middle"
            android:text="左" />
    
        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_centerVertical="true"
            android:layout_toRightOf="@id/middle"
            android:text="右" />
    
        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
    
            android:text="左上角" />
    
        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentBottom="true"
            android:layout_alignParentLeft="true"
            android:layout_marginLeft="14dp"
            android:text="左下角" />
    
    </RelativeLayout>
    

    帧布局

    <?xml version="1.0" encoding="utf-8"?>
    <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent" >
        <TextView 
            android:text=""
            
            android:background="#ff0000"
            android:layout_width="200dip"
            android:layout_height="200dip"/>
         <TextView 
            android:text=""
            
            android:background="#00ff00"
            android:layout_width="100dip"
            android:layout_height="100dip"/>
         <TextView 
            android:text=""
            
            android:background="#0000ff"
            android:layout_width="50dip"
            android:layout_height="50dip"/>   
    
    </FrameLayout>
    

    相关文章

      网友评论

          本文标题:Android开发的几种常见布局

          本文链接:https://www.haomeiwen.com/subject/udnblttx.html