按钮控件——Android开发学习笔记(二)

今天是Judy 实习的第一天,她现在还在回学校的路上,而且饭都还没吃。Maxiee 今天学了大半天Android 开发,但是自己还没回学校,没法实实在在地犒劳Judy,于是Maxiee 就利用今天的所学,给Judy 开发了一个“惊喜”。

这实际上是个小应用啦,除了用了前面学到的LinearLayout 和文本控件,Maxiee 还用了今天学得按钮控件和Toast 提示框,效果还不错哈。

下面就是Maxiee 的按钮控件学习笔记:

1. 一个空的Button 控件

一个空的Button 控件只有两个部分组成,一个开头,一个结尾:

<Button

/>

当然,我们要在其中添加按钮的具体属性

2. 怎么填充呢?

是横向充满还是纵向充满?甚至是横纵都充满(一个大胖子按钮)呢?当然,我们也许不希望充满,仅要求包裹下按钮上的标签就行啦。

这些都要我们来设置,比如:

android:layout_width="wrap_content"

android:layout_height="wrap_content"

就是够用就好

android:layout_width="match_parent"

android:layout_height="wrap_content"

就是一个横跨一整行的横向充满的按钮啦

3. 标签

我们设立了按钮,等用户按下时,就会产生一个事件(按钮按下啦),具体是那个按钮发出的呢?所以,按钮需要有一个名字(ID),这个名字是我们设立的:

android:id="@+id/zuihou"

这样,这个按钮的名字就叫做“zuihou”了,在Java 代码中,我们可以通过相应的调用来找到这个按钮。

4. 在Java 代码中怎么表示按钮呢?

我们在MainActivity (就是我们创建的Activity 的那个子类)类一开头就声明类型为 Button的私有变量:

private Button zuihou;

它现在并没有跟我们在.xml 中创建的按钮标签联系上来,所以我们要通过一行代码完成这个联系,在onCreate 函数里,加入:

zuihou=(Button)findViewById(R.id.zuihou);

这样我们的私有变量zuihou 就代表我们创建的那个按钮啦

5. 如何创建按钮事件

当按钮按下时会产生怎样的操作呢?这个需要我们自己来指定,而这个过程,分为两步。

首先我们要安排一个Listener,就像是安排一个小人儿在旁边看着,一旦有按键按下,他就爆菊花(?),而这,通过一行代码实现:

zuihou.setOnClickListener(listener);

那具体执行什么动作呢?当然不是前面说的那啥了,还要我们自己指定。这个Listener 是等待我们来重构的:

[java]

private OnClickListener listener=new OnClickListener() {

&nbsp;

@Override

public void onClick(View v) {

Button btn=(Button)v;

switch (btn.getId())

{

case R.id.lei:

Toast.makeText(MainActivity.this, "是滴尼!!",Toast.LENGTH_LONG).show();

case R.id.bulei:

Toast.makeText(MainActivity.this, "怎么可能内",Toast.LENGTH_LONG).show();

case R.id.zuihou:

Toast.makeText(MainActivity.this, "我",Toast.LENGTH_LONG).show();

}

}

};

[/java]

这就是Maxiee 今天的收获了,很浅显,要学的还有很多~加油~