2019-04-15

2019-04-15  本文已影响0人  刘吴邪

1、什么是Activity?

在Android当中,Activity提供可视化的用户界面,一个Android应用通常由多个Activity组成。多个Activity组成了Activity栈(Stack),当前活动的Activity处于栈顶。Activity有自己的生命周期,由Android系统来控制。在Activity中包含一个window对象,在window当中通常包含一个布局容器对象(如LinearLayout布局对象),在布局对象中包含了我们之前讲解的各种UI组件。和HTML DOM一样,Android的Activity也是一个具有严格层次结构的,类似于树形的对象结构。

2、回调

C、C++、Java Script中的回调是通过指针来实现的;但是Java中不允许直接操作指针,回调是通过接口来实现的。接口(系统框架)是系统提供的,接口的实现使用户实现的。系统通过在不同的状态“回调”我们的实现类来达到接口和实现的分类。(Activity接口)

3、如何创建自己的Activity?(三步走)

MyActivity.java → activity_my .xml → 在AndroidManifest.xml中的相应注册 或者 new→Android Activity

第一步:在相应的布局文件中定义显示布局;

第二步:定义Activity类是,继承Activity,并求重写onCreate()方法

- 找到对应的xml布局文件:setContentView(R.layout.main)

- 通过findViewById找到相应控件对象:btn = (Button)this.findViewById(R.id.button01);

第三部:在AndroidManifest.xml中注册。

1.文本类:

TextView、EditText、AutoCompleteTextView、MultAutoCompletTextView 、(TextSwitcher) 、(DigitalClock)

ExtractEditText、CheckedTextView、Chronometer

TextView

    android:layout_width="wrap_content"

    android:layout_height="wrap_content"

    android:layout_gravity="center"

    android:textColor="#2196F3"

    android:textSize="40sp"

    android:text="李易峰最帅"

    />

 android:textColor是设置的字体颜色

android:textSize是设置的字体大小

android:text主要就是文本的内容

这部分代码之后呈现出来的就是这个样子的。

EditText

    android:layout_width="wrap_content"

    android:layout_height="wrap_content"

    android:hint="请输入你的账号"/>

这个就是输入框,输入框中的提示信息

之后就是这个样子了

2.按钮类:

Button、CheckBox、RadioButton(RadioGroup) 、ToggleButton 、(ImageButton )

CompoundButton、ZoomButton、ZoomControls 

Button

    android:id="@+id/button"

    android:layout_width="wrap_content"

    android:layout_height="wrap_content"

    android:layout_weight="1"

    android:text="登录" />

这是一个按钮,可以设置一下按钮的名称

3.图片类:

ImageView、ZoomButton、ImageButton、(ImageSwitcher )

QuickContactBadge

ImageView

    android:id="@+id/imageView"

    android:layout_width="208dp"

    android:layout_height="176dp"

    android:layout_weight="1"

    tools:srcCompat="@drawable/lyf" />

ImageView是插入图片的,把图片放在drawable这个文件夹里面然后把这张照片的路径像这样放着就可以了

然后图片就会像下图那样。

4.时间控件:

DigitalClock、AnalogClock、TimePicker、DatePicker

5.进度显示:

ProgressBar、AbsSeekBar、SeekBar、RatingBar

6.导航:

TabHost、TabWidget。

7.视频媒体:

VideView、MediaController、SurfaceView

8.Dialog对话框

CharacherPickerDialog、AlertDialog、DatePickerDialog、ProgressDialog、TimePickerDialog

9.网页:

WebView

10.动画:

ViewAimator、ViewFilpper、ViewSwitcher、ImageSwitcher、TextSwitcher

11.滚动条:

HorizontalScrollView、ScrollView

以上例举了一些很常用的控件。

下面就是一些控件的基本用法:

android:id = "@+id/XXX"程序中通过ID来关联控件    

android:layout_width/android:layout_height控制控件的宽度/高度,可选"wrap_content"/"fill_parent"/"match_parent"/具体像素

android:layout_marginLeft/Right/Top/Bottom =“5dip”各边距离其他控件的距离

android:gravity  控件中内容的显示位置

android:textSize空间中文本大小

android:textColor = "#ff123456"空间中文本颜色,以#开头,前两位为透明值,后六位为颜色值

android:textStyle ="normal"/"bold"/"italic"控件文本风格,也可用“|”将属性组合起来

android:text控件文本内容

android:background = "@drawable/window_bg"控件背景

android:src = "@drawable/window_bg"控件图片,用于ImageButton,ImageView等需要图片的控件

android:visibility控件可见性,"visible"表可见,"invisible"表不可见,但在布局中占用的位置还在,"gone"表不可见,完全从布局中消失

android:padding控件中内容与控件边框的距离

android:weight指定画完控件后剩余空间的分配所占比例

android:ems/maxEms/minEms控制控件宽度

LinearLayout特有属性

android:orientation      布局中子控件排布方向

TableLayout特有属性

android:stretchColums      指定当一个TableRow中的控件不够填充满整个宽度时,将会被拉伸的条目。

上一篇下一篇

猜你喜欢

热点阅读