Android-day02
Eclipse没有提示?
window–>preferences–>java–>editor–>advance–>java proposals
新建项目
new–>new android project(ADT)
android unit
activity_main.xml:
layout_width : 控件的宽度
layout_height : 控件的高度
layout_marginTop : 距离屏幕上边距离
dp、px区别:
dp会进行屏幕适配,px是固定的像素点。
textSize:设置文本的字体大小。
dp、sp区别?
实际效果两者相同,但是官方建议使用sp。sp会随着系统字体大小而改变,dp不行。
match_parent : 匹配父容器(没给定的时候,就是屏幕)。
wrap_content : 包裹控件,控件内容有多大,就显示多大。
screen
Android会自动寻找适配最合适、最接近分辨率,ldpi(240*320)、xxxhdpi(4k)没必要使用,浪费空间。
控件大小除了使用match_parent、wrap_content还能使用固定大小(相对固定)
TextView
※F4查看继承体系(eclipse ADT)
View 是Android所有空间的基类。
background : 设置背景颜色,rgb#rgb、#rrggbb
argb#argb、#aarrggbb。
设置背景图片R.drawable.ic_launcher (X)
@drawable/ic_launcher (O)
颜色一般封装进color.xml中:
< color name="Red">#f00</color>
View Visibility
visibility可以选择三个值
view_visible.xml
<view android:visibility="visible" /> <!-- 可见的 -->
<view android:visibility="gone" /> <!-- 不可见,不占位置 -->
<view android:visibility="invisible" /> <!-- 不可见的,占位置 -->
<!-- 任何控件默认都是visible -->
设置内边距
padding:设置控件的内边距
ex : android:paddingLeft : 设置控件内的左边距
android:paddingBottom: 设置控件的下边距
如果每个方向都有同样的内边距值,只需要简单设置padding就行了
设置外边距
margin:设置控件的外边距
ex : android:layout_marginLeft :控件整体距离左边的距离
事件
方法1
view_box.xml
<TextView
android:clickable:"true"
android:onClick="click"
/>
或者
<Button
android:onClick="click"
/>
Button 继承了 TextView
MainActivity.java
public class MainActivity extends Activity{
…………;
public void click(View view){
System.out.println("点击效果");
}
}
方法2
设置布局中,Button的id,然后在MainActivity.java中findbyid–>setOnClickListener
子控件
线性布局,继承与ViewGroup,只有继承这个,才能有子控件。
ViewGroup没有排序规则,不能加载子控件。
xmlns:android : 命名空间
android:orientation : 用来控制线性布局下,子控件的排列方式。
vertical : 垂直排列
horizontal : 水平排列
权重
权重weight:
layout_weight : 按比例分配(暂时)
Android五大布局
linearLayout : 线性布局
只能横向和垂直方向,简单布局
RelativeLayout : 相对布局
相对布局及子类是默认从左上角层叠排放。
layout_centerHorizontal : 设置水平居中(只有相对布局中才有的属性)
layout_centerVertical : 设置垂直居中
layout_centerInParent : 设置全局居中
指定布局,需要设置ID:
android:id=”@+id/id名”
<TextView layout_above ="@id/ID名" /> <!-- 不是设置id,不用[+]号 --> <TextView layout_below ="@id/ID名" /> <TextView layout_align ="@id/ID名" /> <!-- 和某控件对其 --> <TextView layout_alignLeft ="@id/ID名" /> <!-- 和某控件左边对其 --> <TextView layout_alignRight ="@id/ID名" /> <TextView layout_toLeftOf ="@id/ID名" /> <TextView layout_toRightOf ="@id/ID名" />
AbsoluteLayout :绝对布局(使用非常少)
在机顶盒开发使用比较多(明确指定适配哪种类型的屏幕,不需要适配),一般手机app不会使用。
<View android:layout_x="0px" android:layout_y="0px" /> <!-- 一般使用像素px -->
FrameLayout : 帧布局
从左上角开始布局,并且一层层往上堆叠 。
TableLayout
<TableRow> <View /> <View /> </TableRow> <TableRow> <View /> <View /> </TableRow> <!-- 可用LinearLayout替代 -->
TextView属性
android:lines : 强制行数显示
android:ellipsize : 设置省略号 ellipsis [el’lip·sis] n. 省略; 省略符号
start
middle
end
marquee : 滚动显示
android:drawableLeft : 在TextView左边显示图片
android:gravity : 设置控件内部的文字或图片的位置
EditView simple
android:inputType : 可以设置样式,比如密码隐藏
Android打印Log
Log.v("Tag", "Text");//verbose adj. 详细的, 冗长的
Log.d("Tag", "Text");//debug
Log.i("Tag", "Text");//info
Log.w("Tag", "Text");//warn
Log.e("Tag", "Text");//error
LogCat –> 输入tag:(我的Tag