`

玩转Android---UI篇---Button(按钮)

阅读更多

Button,就是按钮,是android中应用最多的组件之一,Button有两种用法,一种是XML中配置,另一种是在程序中直接使用

在XML布局文件里,会遇到如下一些单位

px:是屏幕的像素点

in:英寸

mm:毫米

pt:磅,1/72 英寸

dp:一个基于density的抽象单位,如果一个160dpi的屏幕,1dp=1px

dip:等同于dp

sp:同dp相似,但还会根据用户的字体大小偏好来缩放。

建议使用sp作为文本的单位,其它用dip

 

例1:在XML中布局,这样来设置控件以后修改起来会更方便,也符合了MVC模式

main.xml布局文件

<?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"

    >

<TextView  

    android:layout_width="fill_parent" 

    android:layout_height="wrap_content" 

    android:text="这是个Button示例"

    />

<Button

android:layout_width="fill_parent"------充满父控件

android:layout_height="wrap_content"------充满内容

android:id="@+id/button1"----设置button的ID

android:text="按钮一"    ------设置按钮的文本显示信息,也可以用string

/>

<Button

android:layout_width="150dip"---按钮二的宽度

android:layout_height="30dip"---按钮二的高度

android:background="#aa00aa"---设置按钮背景颜色

android:textColor="#00aa00"---设置按钮二里的文本颜色

android:layout_gravity="center"---设置控件居中显示,注意:android:gravity="center"表是文本在控件中居中显示

android:id="@+id/button2"

android:text="按钮二"

/>

</LinearLayout>

 

TestButton.java源代码

package org.loulijun.button;

 

import android.app.Activity;

import android.os.Bundle;

import android.view.Gravity;

import android.view.View;

import android.widget.Button;

import android.widget.Toast;

 

public class TestButton extends Activity {

    /** Called when the activity is first created. */

private Button btn1,btn2;

    @Override

    public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.main);

        btn1=(Button)findViewById(R.id.button1);---获得父控件id

        btn2=(Button)findViewById(R.id.button2);

        //为控件设置监听,当点击了按钮一,就弹出一个提示,当点击按钮二,退出程序

        btn1.setOnClickListener(new Button.OnClickListener()

        {

 

@Override

public void onClick(View arg0) {

// TODO Auto-generated method stub

Toast toast=Toast.makeText(TestButton.this, "你点击了按钮"+btn1.getText().toString(), Toast.LENGTH_SHORT);

toast.setGravity(Gravity.TOP,0,150);

toast.show();

}

        

        });

        btn2.setOnClickListener(new Button.OnClickListener()

        {

 

@Override

public void onClick(View v) {

// TODO Auto-generated method stub

TestButton.this.finish();

}

        

        });

    }

}

 

运行结果:



当然,也可以直接在程序中使用相应的方法来这是Button的相应属性

 

public class TestButton extends Activity{

private Button btn1,btn2;

public void onCreate(Bundle savedInstanceState)

{

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

btn1=(Button)findViewById(R.id.button1); btn2=(Button)findViewById(R.id.button2);

btn1.setWidth(150);--设置按钮宽度,当然也可以用setHeight()来设置高度

btn2.setWidth(100);

btn1.setText("按钮一");---设置按钮文本显示信息

btn2.setText("安妮二");

btn1.setTextColor(Color.GREEN);---设置按钮内文本颜色

btn2.setTextColor(Color.RED);

btn1.setTextSize(30);---设置按钮内文本大小

btn2.setTextSize(20);

btn2.setBackgroundColor(Color.RED);---设置按钮背景颜色

}

}

  • 大小: 36.9 KB
  • 大小: 39.5 KB
分享到:
评论

相关推荐

    富文本按钮RichButton

    在创建设置界面时,使用富文本按钮可以使得UI更加生动且功能更为强大。本文将深入探讨如何使用RichButton来构建高效且灵活的设置界面,同时结合ListView实现类似TableView的效果。 首先,我们要理解`RichButton`与...

    Android控件操作-二十四章经 - v1.01

    第四章“玩转单选和多选按钮”涵盖了RadioGroup与RadioButton以及CheckBox的用法,用于实现单选和多选功能,让读者能够设计出更复杂的用户选择界面。 第五章“开关按钮ToggleButton和Switch”介绍了两种常见的开关...

    Android下的原创小游戏-九宫格

    在这个案例中,九宫格的每个单元格可能对应一个可点击的Button,按钮的文字内容则表示当前数字或者空缺状态。当用户点击单元格时,需要捕获点击事件,更新相应的数据模型并反馈给界面。 数据模型的设计是游戏实现的...

    cocos2d-x酷跑完整源代码

    4. **用户界面(UI)**:游戏中的按钮、计分板等元素属于UI部分,cocos2d-x提供了UI组件,如Label、Button等,源代码将展示如何构建和管理UI元素。 5. **事件处理**:游戏中的玩家输入、碰撞事件都需要响应,cocos...

    COCOS2d-X by Example Beginner-'s Guide

    - **按钮(Button)**: 实现各种功能的触发。 ### 音频与视频集成 声音和视频是现代游戏中不可或缺的部分: - **音效(Sound Effects)**: 为游戏中的事件添加声音反馈。 - **背景音乐(Background Music)**: 提供持续...

    Android游戏开发20回合

    1. **长按Button原理**:在Android中,按钮(Button)通常响应点击事件,但长按事件是通过`OnLongClickListener`接口实现的。开发者可以覆盖`onLongClick()`方法来处理长按行为。对于游戏开发,长按可能用于执行连续...

    通过学习实现的一个简易五子棋小游戏,主要学习Android中自定义View相关知识

    在Android开发中,自定义View是一项重要的技能,它允许开发者根据特定需求创建具有独特功能和交互的视图组件。这个简易五子棋小游戏就是这样一个实例,它展示了如何将自定义View应用于游戏开发中。下面我们将深入...

    android Crazy Dice

    Android提供丰富的UI组件,如ImageView用于显示骰子图像,TextView用于显示分数和提示信息,以及Button用于用户交互。游戏界面的布局通常采用XML文件描述,与Java或Kotlin代码相分离,提高代码的可读性和可维护性。...

    安卓开发学习日记第四天_会爬就会跑_莫韵乐的欢乐日记

    - `buttonID`数组用于存储每个按钮的ID,便于通过ID找到对应的按钮对象。 - 变量`count`用于记录玩家点击按钮的次数,用于游戏结束时的统计。 4. **实例化对象数组**: - 在`onCreate`方法中,通过`...

    rotateme:一个简单的Android游戏

    "Rotateme"是一款基于Android平台的简单游戏应用,其核心玩法是通过用户旋转手机来累积分数。这个游戏展示了Android开发中的基本概念和技术,主要利用了传感器API和Java编程语言。以下将详细介绍相关知识点: 1. **...

    MadLibs:Mad Libs 游戏的 Android 应用程序实现

    这个应用将故事存储在手机的内部数据库中,为用户提供了一种便捷的方式来保存和玩转各种故事模板。 首先,我们要了解的是Android开发的基础,这主要涉及到Java语言。Java是Android平台的主要编程语言,因此开发者...

    JAVA上百实例源码以及开源项目源代码

    Java右键弹出菜单源码 简单 Java圆形按钮实例代码,含注释 两个目标文件,自绘button。 Java圆形电子时钟源代码 1个目标文件 内容索引:JAVA源码,系统相关,电子钟 用JAVA编写的指针式圆形电子钟,效果图如下所示,...

Global site tag (gtag.js) - Google Analytics