Android常见布局之表格布局

表格布局以行列的方式对子组件进行布局,有些类似很多年前网页制作中的表格布局,在Android中的表格布局使用TableLayout,使用TableRow来定义行,在每行中需要布局多个组件的情况下可以采用这种布局方式,也可以使用这种布局方式来达到表格的效果。

其使用的方式为:


/>
    
    >
    
    
    ...

一个简单的登录例子:3行,第一行为登录用户+登录用户录入,第二行为登录密码+登录密码录入,第三行为登录按钮。


     
          
          
     
     
          
          
     
     
          

TableLayout的比较常用的属性有collapseColumns,stretchColumns,shrinkColumns

collapseColumns 主要用于隐藏TableRow中的列,以0开始,如需隐藏多列,则以逗号分隔;

stretchColumns主要用于拉伸TableRow中的列,以0开始,多列以逗号分隔,如果本身已经没有空间里,则该属性不起作用

shrinkColumns主要用于伸缩TableRow中的列,以0开始,多列以逗号分隔,如果空间没有充满布局,则该属性不起作用,如果行空间充满布局,则设置该属性的列则垂直以内容填充

使用常见的属性,修改上面的代码:


     android:collapseColumns="2">  
     
           
          
          
     
     
          
          
     
     
          

最终运行效果如下图所示:

科技日新月异,还是否记得使用过的通讯工具

科技发展确实日新月异,通讯方式不知不觉的已经发生了很大的变化,从电报、电话、传呼、手机、智能机一路走来,越来越电子化与信息化了。

在我们上学的时代,仅指大学,高中基本上不存在书信往来,那个时候同学之间分布在全国各地,基本上都是靠书信往来,在快步入社会的时候,那个时候红极一时的是传呼,从这个时间说起,记录一下自己在整个变迁过程中使用过的东西!

1、在传呼时代的中后期,已经有大砖头出现的时代,曾经使用过摩托罗拉精英王传呼,具体型号忘记;

2、最早使用的是诺基亚5210手机,喜欢诺基亚那句经典的“科技以人为本”广告语;

3、第二部手机是诺基亚3210手机;

4、第三部手机大唐的一款CDMA手机,具体型号忘记

Android常见布局之线性布局

Android中比较常见的布局有线性布局(LinearLayout),表格布局(TableLayout),相对布局(RelativeLayout)及帧布局(FrameLayout)。

线性布局是将其中的组件按照线性的,以垂直或者水平方向来布局,组件的布局方向可由orientation属性来控制,其具体值有水平(horizontal)及垂直(vertical)。搞清楚布局以后,这玩意就的思考加练习,以各种方式在纸上进行画,或者在心里画,然后编写布局文件来练习,时间长了就自然而然的熟练了。

练习要求:

1、把屏幕分成2部分,上面一部分,下面一部分

2、上面部分分为4列

3、下面部分分为4行

OK,开始练习!(在Eclipse中建立项目测试Layout,修改其res目录下的layout目录中的main.xml文件)

第一步:考虑LinearLayout使用数目,并确定其方向,由于是分为上下两部分,所以最外层layout采用垂直方向布局,里面两个layout分别表示上下;

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

第二步:补充内部layout属性及增加组件,这里用TextView组件来填充LinearLayout,不断补充调整,最终布局文件如下:

 <?xml version="1.0" encoding="utf-8"?>
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
     android:orientation="vertical"
     android:layout_width="fill_parent"
     android:layout_height="fill_parent">
     <LinearLayout android:orientation="horizontal"
         android:layout_width="fill_parent"
         android:layout_height="fill_parent"
         android:layout_weight="1">
            <TextView
                 android:text="col1"
                 android:gravity="center_horizontal"
                 android:background="#999999"
                 android:layout_width="wrap_content"
                 android:layout_height="fill_parent" 
                 android:layout_weight="1" />
            <TextView
                 android:text="col2"
                 android:gravity="center_horizontal"
                 android:background="#290fc0"
                 android:layout_width="wrap_content"
                 android:layout_height="fill_parent"
                 android:layout_weight="1" />
            <TextView
                 android:text="col3"
                 android:gravity="center_horizontal"
                 android:background="#999999"
                 android:layout_width="wrap_content"
                 android:layout_height="fill_parent"
                 android:layout_weight="1" />
            <TextView
                 android:text="col4"
                 android:gravity="center_horizontal"
                 android:background="#290fc0"
                 android:layout_width="wrap_content"
                 android:layout_height="fill_parent"
                 android:layout_weight="1" /> 
     </LinearLayout>
     <LinearLayout
         android:orientation="vertical"
         android:layout_width="fill_parent"
         android:layout_height="fill_parent"
         android:layout_weight="1">
         <TextView
              android:text="row_one"
              android:textSize="15sp"
              android:background="#290fc0"
              android:layout_width="fill_parent"
              android:layout_height="wrap_content"
              android:layout_weight="1" />
         <TextView
              android:text="row_two"
              android:textSize="15sp"
              android:background="#999999"
              android:layout_width="fill_parent"
              android:layout_height="wrap_content"
              android:layout_weight="1" />
         <TextView
              android:text="row_three"
              android:textSize="15sp"
              android:background="#290fc0"
              android:layout_width="fill_parent"
              android:layout_height="wrap_content"
              android:layout_weight="1" />
          <TextView
              android:text="row_four"
              android:textSize="15sp"
              android:background="#999999"
              android:layout_width="fill_parent"
              android:layout_height="wrap_content"
              android:layout_weight="1" />
     </LinearLayout>
</LinearLayout>

运行效果如下图所示:

LinearLayout

神器vim的基本使用

对于比较简短的代码通常会使用文本编辑器进行测试,或者在开始学习的时候常常会用到文本编辑器,回想这么多年下来,从开始的Editplus到Notepad++也用过不少,前段时间接触了一下被称为神器的vi/vim,逐渐被其强大的功能及编辑方式所吸引,所以日常中开始逐渐的使用这个编辑器做一些文本或者代码的编写测试,经过一段时间的使用,可以基本上使用这个编辑器做一些简单的操作,对此进行记录,我使用的是gvim 7.3.46 。

(1)常用到的设置,通过在启动设定中进行常规的设置(通过菜单或者在Vim安装目录下通过修改_vimrc文件)进行设置

不需要备份文件(set nobackup )

打开utf-8不出现乱码(set fileencodings=ucs-bom,utf-8,chines)

显示行号(set nu)

配色方案(:colorscheme borland) 这里我使用borland配色方案,可根据自己喜欢进行设置

(2)常用命令

ESC 这个是很常用的,可在vim不同模式间进行转换,可在浏览模式、编辑模式、命令输入模式间快速转换,任何时候按ESC键回到浏览模式。

h,j,k,l 键,分别代表左,下,上,右移动方向键(在浏览模式中适用)

在浏览模式中输入:可进入命令输入模式。

命令:q,退出vim,如当前文本有修改则提示不退出

命令:q!,强制退出vim,如当前文档有修改则放弃保存

命令:wq,保存后退出vim

命令:w, 保存当前的修改

命令:w + filename 可保存当前文本到指定的filename中

命令:num 可跳转至指定的num行

命令:/find str或 :?find str 可查找find str的文本,然后可使用n向下查找,使用N向上查找

在浏览模式中进入编辑模式,i,I,a,A,o,O,i在光标所在前插入文本,I在光标所在行首插入文本,a在光标所在后插入文本,A在光标所在行末插入文本,o在光标所在行下添加一行,O在光标所在行上添加一行。

在浏览模式有一些常用到对文本进行操作的快捷命令

dd 删除当前行,n+dd 删除当前行下n行,比如3dd将删除当前行向下3行

x  删除当前光标所在后的字符,X删除当前光标所在前的字符

yy 复制当前行,n+yy复制当前行下n行

p 粘贴

u 撤销

^ 移动光标到行首

$ 移动光标到行尾

gg 返回文件首行 G 到文件末行行首

Ctrl + f 向后一页

Ctrl + d 向后半页

Ctrl + b 向前一页

Ctrl + u 向前半页

这些都是经常使用的命令,通过这些命令就可以简单的使用vim进行文本的编辑了,这个东西就是一个熟练的活,随着使用时间的增加会越来越熟练,其效率也会越来越高,给我的感觉vim作为比较强悍的编辑器来讲确实在效率上能让人提高很多,其合理的利用了键盘上几乎所有的命令,让你的双手可以在键盘上优雅的跳动,这种全盘操控的感觉让人确实很爽!

 

Eclipse 4 Java常用快捷键

关闭当前打开的编辑窗口(Ctrl + W)

关闭所有已打开的编辑窗口(Ctrl + Shift + W )

格式化代码(Ctrl + Shift + F )

Import 包 (Ctrl + Shift + O)

删除当前行(Ctrl + D)

对选中的文件重命名(Alt + Shift + R)

快速浏览当前类成员变量及方法 (Ctrl + O)

快速定位下一个当前选中的内容所在 (Ctrl + K)

保存当前(Ctrl + S)

查看更多的快捷键(Ctrl + Shift + L )

 

修改快捷键 Window -> Preferences -> General -> Keys  然后修改!