摘要:RadioButton 实现RadioButton由两部分组成,也就是RadioButton和RadioGroup配合使用.RadioGroup是单选组合框,可以容纳多个RadioButton的容器.在没有RadioGroup的情况下,RadioButton可以全部都选中;当多个RadioButton被RadioGroup包含的情况下,RadioButton只可以选择一个。并用setOnCheckedChangeListener来对单选按钮进行监听RadioGroup相关属性:RadioGroup.getCheckedRadioButtonId ();//--获取选中按钮的idRadioGr.
阅读全文
摘要:Button Button继承了TextView。它的功能就是提供一个按钮,这个按钮可以供用户点击,当用户对按钮进行操作的时候,触发相应事件,如点击,触摸。 还有一个ImageButton,它继承自Button,可以在ImageButton中显示一个图片展示给用户看,并且对其Text属性设置值的时候是无效的,其它功能与Button一样。常用事件 一般对于一个按钮而言,用的最多的就是点击事件,Button间接继承自View,而AndroidUI中的所有事件,都是定义在View中的。在本篇博客中,示例讲解的点击事件、触摸事件,其他事件的使用方式与此类似,只是触发的时机不同而已。此处分别需要实...
阅读全文
摘要:1.TextView常用属性 TextView的常用属性有以下一些: setText(); //设置文本内容,同xml中的android:text setTextSize(); //设置文本字体大小,同xml中的android:textSize setTextColor(); //设置文本颜色,同xml中的android:textColor setBackgroundColor(); //设置背景颜色,同xml中的android:backgr...
阅读全文
摘要:RelativeLayout的常用属性有以下一些: 第一类:属性值为true或false android:layout_centerHrizontal 水平居中 android:layout_centerVertical 垂直居中 android:layout_centerInparent 相对于父元素完全居中 android:layout_alignParentBottom 贴紧父元素的下边缘 android:layout_alignParentLeft 贴紧父元素的左边缘 android:layout_al...
阅读全文
摘要:框架布局是将控件组织在Android程序的用户界面中最简单的布局类型之一。 框架布局中的子视图总是被绘制到相对于屏幕的左上角上。所有添加到这个布局中的视图都是以层叠的方式显示。第一个添加到框架布局中的视图显示在最底层,最后一个被放在最顶层,上一层的视图会覆盖下一层的视图,因此框架布局类似堆栈布局。 在框架布局中,常用的属性有以下几项: android:top将视图放到屏幕的顶端 android:Buttom将视图放到屏幕的低端 android:Left将视图放到屏幕的左端 android:Right将视图放到屏幕的右端 android:Center_vertical将视图按照...
阅读全文
摘要:1.EditText常用属性 EditText继承自TextView,所以EditText也拥有一些TextView中的属性和方法。EditText的常用属性有以下一些: android:capitalize="sentences"//设置英文字母大写类型,sentences仅第一个字母大写;words每一个单词首字母大小,用空格区分单词;characters每 一个英文字母都大写 android:cursorVisible="true"//设定光标为显示或隐藏,默认为显示 android:digits="0123456789.abc#&quo
阅读全文
摘要:1.Activity介绍 Activity是Android四大组件(Activity、Service、Broadcast Reciever、Context Provider)之一。 Activity就是布满整个窗口或者悬浮于其他窗口上的交互界面。一个应用程序通常会包含多个Activity,并且会在AndroidManifest.xml中指定一个主的Activity。 Activity有三种状态,分别为运行状态、暂停状态和停止状态。 运行状态:运行状态的Activity是指处于屏幕前台(位于当前任务堆栈的顶部)的Activity,该Activity处于激活状态,用来响应用户的当前操作。 ...
阅读全文
摘要:线性布局在xml文件中使用来定义。 线性布局可以分为水平和垂直方向的布局,可以通过android:orientation来定义方向,android:orientation=“horizontal”表示水平方向,android:orientation=“vertical”表示垂直方向。 android:layout_width表示控件的宽度,android_layout_height表示控件的高度,其属性值有wrap_content、fill_parent、match_parent三种。其中,wrap_content表示填满父控件的空白,fill_parent表示大小刚好足够显示当前控件里的..
阅读全文
摘要:1.Layout介绍 为适应各种界面风格,满足开发的需要,Android提供了5种布局方式,分别是LinearLayout(线性布局)、FrameLayout(框架布局)、RelativeLayout(相对布局)、AbsoluteLayout(绝对布局)以及TableLayout(表格布局),通过这5种布局我们可以在手机屏幕上随心所欲的摆放各种控件。 在Android的系统中,可视化的控件是从Android.view.View类中继承而来。控件的创建方式通常有2种方式: 1、通过在xml布局文件中配置控件的各种属性,然后在程序中加载要使用的控件。 2、直接在程序中设置控件属性,并加载控...
阅读全文
摘要:在Android系统中,各种颜色与其对应的码制如下: #ffffff #fffff0 #ffffe0 #ffff00 #fffafa #fffaf0 #fffacd #fff8dc #fff5ee #fff0f5 #ffefd5 #ffebcd #ffe4e1 #ffe4c4 #ffe4b5 #ffdead #ffdab9 #ffd700 #ffc0cb #ffb6c1 #ffa500 #ffa07a #ff8c00 #ff7f50 #ff69b4 #ff6347 #ff4500 #ff1493 #ff00ff #ff00ff #ff0000 #fdf5e6 #fafad2 #faf0e6 #
阅读全文
摘要:ArrayList和Vector的区别这两个类都实现了List接口(List接口继承了Collection接口),他们都是有序集合,即存储在这两个集合中的元素的位置都是有顺序的,相当于一种动态的数组,我们以后可以按位置索引号取出某个元素,,并且其中的数据是允许重复的,这是HashSet之类的集合的最大不同处,HashSet之类的集合不可以按索引号去检索其中的元素,也不允许有重复的元素(本来题目问的与hashset没有任何关系,但为了说清楚ArrayList与Vector的功能,我们使用对比方式,更有利于说明问题)。接着才说ArrayList与Vector的区别,这主要包括两个方面:. (1)同
阅读全文
摘要:"=="和equals方法究竟有什么区别? ==操作符专门用来比较两个变量的值是否相等,也就是用于比较变量所对应的内存中所存储的数值是否相同,要比较两个基本类型的数据或两个引用变量是否相等,只能用==操作符。 如果一个变量指向的数据是对象类型的,那么,这时候涉及了两块内存,对象本身占用一块内存(堆内存),变量也占用一块内存,例如Objet obj = new Object();变量obj是一个内存,new Object()是另一个内存,此时,变量obj所对应的内存中存储的数值就是对象占用的那块内存的首地址。对于指向对象类型的变量,如果要比较两个变量是否指向同一个对象,即要看
阅读全文
摘要:1、直接插入排序 基本思想:在要排序的一组数中,假设前面(n-1)[n>=2] 个数已经是排好顺序的,现在要把第n个数插到前面的有序数中,使得这n个数也是排好顺序的。 如此反复循环,直到全部排好顺序。public class InsertSort { public static void main(String[] args) { int[] a = new int[args.length]; for (int i=0;i= 0 && temp a[j+1]) { temp = a[j]; ...
阅读全文
摘要:1 package com.test; 2 /** 3 * 4 * @author 5 * 6 */ 7 public class TestInteger { 8 9 /**10 * @param args11 */12 public static void main(String[] args) {13 int i = 128;14 Integer i2 = 128;15 Integer i3 = new Integer(128);16 //Integer会自动拆箱为int,所...
阅读全文
摘要:Lumzy一款在线UI设计工具, 无需下载安装,使用起来非常方便。在和客户或者团队成员一起讨论UI设计的时候,可以考虑试试这个工具。官方网址是http://lumzy.com/Gliffy如果不愿意用Visio, 那可以试试Gliffy.它是一款在线的图表绘制工具,可以用来代替Visio.http://www.gliffy.comJing一款非常好用的截图和录制桌面视频的软件,还可以上传发布。当和用户沟通的时候,录制电脑桌面视频,然后上传,只需要告诉客户一个链接就可以了,非常方便官方网址是http://www.techsmith.com/jing.htmlEverythingEverythin
阅读全文
摘要:事件处理监听适配器import java.awt.Color;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;import javax.swing.JFrame;public class MyWindowEvent { public static void main(String[] args) { JFrame frame = new JFrame("Welcome to leaf's blog"); frame.addWindowListener(new Windo...
阅读全文
摘要:布局管理器1、概念:组件在容器(比如JFrame)中的位置和大小是由布局管理器来决定的。所有的容器都会使用一个布局管理器,通过它来自动进行组件的布局管理。2、种类流式布局管理器(FlowLayout)边界布局管理器(BorderLayout)网格布局管理器(GridLayout)卡片布局管理器(CardLayout)网格包布局管理器(GridBagLayout) 流式布局 按照组件的添加次序讲组件从左到右放置在容器中,当到达容器边界的时候,自动换行;可以左、中、右对齐。import java.awt.FlowLayout;import javax.swing.*;public class T.
阅读全文
摘要:JTabbedPane在面板上设置多个选项卡import java.awt.Container;import java.io.File;import javax.swing.ImageIcon;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JPanel;import javax.swing.JTabbedPane;public class JTabbedPaneDemo { public static void main(String[] ...
阅读全文
摘要:JFrameJFrame类的常用操作方法import java.awt.Color;import javax.swing.JFrame;public class JFrameDemo1 { public static void main(String[] args) { JFrame f = new JFrame("第一个Swing窗体"); f.setSize(200, 100); f.setBackground(Color.WHITE); f.setLocation(300, 200); f.setVisible(...
阅读全文
摘要:字节流按一个字节一个字节读取文件import java.io.*;public class TestFileInputStream { public static void main(String[] args) { int b = 0; FileInputStream in = null; try { in = new FileInputStream("E:\\Programs\\JavaTest\\JavaBasicTest\\HelloWorld.java"); } catch (FileNotFo...
阅读全文
摘要:1.实例变量和类变量的内存分配类变量:使用static修饰的成员变量是类变量,属于该类本身实例变量:没有使用static修饰的成员变量是实例变量,属于该类的实例由于同一个JVM内每个类只对应一个Class对象,因此同一个JVM内的一个类的类变量只需一块内存空间。对于实例变量而言,该类每创建一次实例,就需要为实例变量分配一块内存空间,所以,程序中有几个实例,实例变量就需要几块内存空间。2.类变量的初始化时机总是处于实例变量的初始化之前我们先看下下面三段代码:1)因为两个实例变量都是在创建变量的时候才开始分配空间,此时num2还没有分配,所以前向引用就会出现编译错误。int num = num2
阅读全文
摘要:线程和进程区别每个进程都有独立的代码和数据空间(进程上下文),进程间的切换会有较大的开销。线程可以看成时轻量级的进程,同一类线程共享代码和数据空间,每个线程有独立的运行栈和程序计数器(PC),线程切换的开销小。多进程: 在操作系统中能同时运行多个任务(程序)多线程: 在同一应用程序中有多个顺序流同时执行线程的创建和启动 可以有两种方式创建新的线程。 第一种 定义线程类实现Runnable接口public class TestRunnable { public static void main(String[] args) { Runner1 r = new Runn...
阅读全文
摘要:下面是我最近看到的一些给IT人的建议,也分享给大家。【1】好好规划自己的路,不要跟着感觉走!根据个人的理想决策安排,绝大部分人并不指望成为什么院士或教授,而是希望活得滋润一些,爽一些。那么,就需要慎重安排自己的轨迹。从哪个行业入手,逐渐对该行业深入了解,不要频繁跳槽,特别是不要为了一点工资而转移阵地,从长远看,这点钱根本不算什么,当你对一个行业有那么几年的体会,以后钱根本不是问题。频繁地动荡不是上策,最后你对哪个行业都没有摸透,永远是新手!【2】可以做技术,切不可沉湎于技术。千万不可一门心思钻研技术!给自己很大压力,如果你的心思全部放在这上面,那么注定你将成为孔乙己一类的人物!适可而止为之,.
阅读全文
摘要:Java关键字类 当把一个对象引用变量赋给另一个对象引用变量时,并没有创建该对象的副本,而只是创建该引用的一个副本。Box b1 = new Box();Box b2 = b1;构造方法声明的特点: 构造方法的名称必须与类名称一致; 构造方法的声明处不能有任何返回值类型的声明; 不能在构造方法中使用return返回一个值。关键字 This 使用this调用本类中的属性 this.属性 使用this调用本类中的方法 只能放在一个方法中的第一行第一句内存区域
阅读全文
摘要:表中添加字段 mysql> alter table leaf add leaf_pri int(5);Query OK, 4 rows affected (0.06 sec)Records: 4 Duplicates: 0 Warnings: 0mysql> select * from leaf;+---------+-----------+----------+----------+----------+------------+----------+| leaf_id | leaf_name | leaf_age | leaf_sal | leaf_sex | leaf_bir
阅读全文
摘要:启动mysql运行到安装目录C:\Program Files\MySQL\MySQL Server 5.6\bin>输入mysqld.exe –install得到结果Service successfully installed输入net start mysql //启动mysqlnet stop mysql //关闭mysql用户成功登录Welcome to the MySQL monitor. Commands end with ; or \g.Your MySQL connection id is 8Server version: 5.6.10 MySQL Community Ser
阅读全文
摘要:1、Java 有时你希望定义一个类成员,使它的使用完全独立于该类的任何对象。通常情况下,类成员必须通过它的类的对象访问,但是可以创建这样一个成员,它能够被它自己使用,而不必引用特定的实例。在成员的声明前面加上关键字static(静态的)就能创建这样的成员。如果一个成员被声明为static,它就能够在它的类的任何对象创建之前被访问,而不必引用任何对象。你可以将方法和变量都声明为static。static 成员的最常见的例子是main( ) 。因为在程序开始执行时必须调用main() ,所以它被声明为static。 声明为static的变量实质上就是全局变量。当声明一个对象时,并不产生stati.
阅读全文
摘要:面试过程中,面试官会向应聘者发问,而应聘者的回答将成为面试官考虑是否接受他的重要依据。对应聘者而言,了解这些问题背后的“猫腻”至关重要。本文对面试中经常出现的一些典型问题进行了整理,并给出相应的回答思路和参考答案。读者无需过分关注分析的细节,关键是要从这些分析中“悟”出面试的规律及回答问题的思维方式,达到“活学活用”。 问题一:“请你自我介绍一下” 思路:1、这是面试的必考题目。2、介绍内容要与个人简历相一致。3、表述方式上尽量口语化。 4、要切中要害,不谈无关、无用的内容。5、条理要清晰,层次要分明。6、事先最好以文字的形式写好背熟。 ...
阅读全文
摘要:题记:Do it. Do it right. Do it right now1、将一天要做的事情列成清单完成复杂活动(activity)的最好方法是将其拆分成简单的各项活动。每天早上,将你一天要完成的活动进行拆分,然后制定一个相应的日程安排表,这样能够帮助你:更好的理解这个活动。每天都有一个集中的目标。提高你的估计能力,几天之后,你会发现你能预测一天的工作量。2、一次只做一件事集中于一项任务比同时做多项任务更多产,不同的研究已经证明这个观点,并且发布在不同的媒体上(例如CNN)。集中精力工作25分钟,休息5到10分钟。你可以用诸如“番茄工作法”这种流行的技术来帮助你管理时间。还有工具能帮助你测
阅读全文