1.XML按钮定义

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" > <Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="50dp"
android:layout_marginRight="50dp"
android:text="第一个自定义按钮"
android:textColor="#ff0000" /> <Button
android:id="@+id/button2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="100dp"
android:background="#0000ff"
android:fontFamily="宋体"
android:text="第二个中文按钮"
android:textColor="#ffffff" /> </RelativeLayout>

显示:

2.后台代码创建控件并注册事件

import android.annotation.SuppressLint;
import android.app.Activity;
import android.app.ActionBar.LayoutParams;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.LinearLayout; /**
* 简单动态产生按钮,并绑定事件
*
* @author zhongyang
*
*/
public class Button_Two extends Activity {
private LinearLayout parentLayout = null; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// 指定布局面板
createParentLayout();
// 创建按钮
CreateButton();
} // 产生布局面板
@SuppressLint("NewApi")
private void createParentLayout() {
parentLayout = new LinearLayout(this);
LayoutParams layoutParams = new LayoutParams(LayoutParams.MATCH_PARENT,
LayoutParams.MATCH_PARENT);
parentLayout.setLayoutParams(layoutParams);
setContentView(parentLayout);
} // 添加按钮并注册事件
@SuppressLint("NewApi")
private void CreateButton() {
Button btnOne = new Button(this);
btnOne.setText("显示其他Activity");
btnOne.setOnClickListener(new btnOneListener()); LayoutParams layoutParams = new LayoutParams(LayoutParams.MATCH_PARENT,
LayoutParams.WRAP_CONTENT);
btnOne.setLayoutParams(layoutParams); parentLayout.addView(btnOne);
} // 按钮点击事件方法
class btnOneListener implements View.OnClickListener {
public void onClick(View v) {
Button thisBtn = (Button) v;
thisBtn.setWidth(100);
thisBtn.setText("按钮点击事件触发了");
}
}
}

显示:

3.XML创建控件 注册click事件

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" > <TextView
android:id="@+id/txtOne"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="30px"
android:background="#000000"
android:paddingBottom="20px"
android:paddingLeft="20px"
android:paddingTop="20px"
android:text="按钮点击之前"
android:textColor="#ffffff" /> <Button
android:id="@+id/btnOne"
android:layout_width="100dp"
android:layout_height="50dp"
android:layout_marginTop="30px"
android:onClick="btnOneClick"
android:text="按钮One"
android:textColor="#00ff00"
android:textSize="20px" /> </LinearLayout>
import android.app.Activity;
import android.content.res.ColorStateList;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
/**
* 访问布局视图中的按钮并注册事件
* @author zhongyang
*
*/
public class ButtonThree extends Activity {
private TextView txtOne = null;
private Button btnOne = null; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// 设置布局视图,初始化控件
setContentView(R.layout.button_three);
txtOne = (TextView) this.findViewById(R.id.txtOne);
btnOne = (Button) this.findViewById(R.id.btnOne);
} // 按钮点击事件
public void btnOneClick(View view) {
Button btn = (Button) view;
btn.setTextSize(25); // 修改TextView的值
txtOne.setText("按钮One触发点击事件");
}
}

显示:

Button简单实例1的更多相关文章

  1. 【转】Android Https服务器端和客户端简单实例

    转载地址:http://blog.csdn.net/gf771115/article/details/7827233 AndroidHttps服务器端和客户端简单实例 工具介绍 Eclipse3.7 ...

  2. ajax原理总结附简单实例及其优点

    在工作中用了Ajax N多次了,也看过一些相关方面的书籍,也算是认识了它,但是一直没有认真总结和整理过相关的东东,失败! 近有闲情,将之总结如下: [名称] Ajax是Asynchronous Jav ...

  3. Android Fragment 简单实例

    Android上的界面展示都是通过Activity实现的.Activity实在是太经常使用了.我相信大家都已经很熟悉了,这里就不再赘述. 可是Activity也有它的局限性,相同的界面在手机上显示可能 ...

  4. gtk+blade+anjuta 的简单实例

    gtk+blade+anjuta 的简单实例我的系统 ubuntu 12.04   1>  选择源 不正确会有很多问题,速度慢,找不到安装的软件.163的源就不错 http://mirrors. ...

  5. vue.js+webpack在一个简单实例中的使用过程demo

    这里主要记录vue.js+webpack在一个简单实例中的使用过程 说明:本次搭建基于Win 7平台 Node.js 安装官网提供了支持多种平台的的LTS版本下载,我们根据需要来进行下载安装.对于Wi ...

  6. SignalR代理对象异常:Uncaught TypeError: Cannot read property 'client' of undefined 推出的结论 SignalR 简单示例 通过三个DEMO学会SignalR的三种实现方式 SignalR推送框架两个项目永久连接通讯使用 SignalR 集线器简单实例2 用SignalR创建实时永久长连接异步网络应用程序

    SignalR代理对象异常:Uncaught TypeError: Cannot read property 'client' of undefined 推出的结论   异常汇总:http://www ...

  7. jsonrpc环境搭建和简单实例

    一.环境准备 下载需要的jar包和js文件,下载地址:https://yunpan.cn/cxvbm9DhK9tDq  访问密码 6a50 二.新建一个web工程,jsonrpc-1.0.jar复制到 ...

  8. WCF 学习总结1 -- 简单实例

    从VS2005推出WCF以来,WCF逐步取代了Remoting, WebService成为.NET上分布式程序的主要技术.WCF统一的模型整合了以往的 WebService.Remoting.MSMQ ...

  9. android Jni NDK开发环境搭建及其简单实例的编写

    android  Jni  NDK开发环境搭建及其简单实例的编写 由于工作需要,需要采用开发想要的JNI,由于之前没有接触过安卓的开发,所以更加网上的帖子,学习了下.遇到了些问题,然后总结下学习过程中 ...

随机推荐

  1. c#类初始化器

    其实类型初始化器只是一种语法糖这样写MyClass a=new MyClass{ filedOne="a" ,filedTwo="b" };会被编译器编译成和如 ...

  2. linq读书笔记1-linq 初步

    至于linq是什么之类的已经有过太多的文章介绍,亦不清楚的胡朋友可以自己搜索一下便可以得到大量的答案 为了体验linq究竟能带给我们什么体验,我们直接从代码入手: string[] words = n ...

  3. HelloCharts pie饼图绘制

    先引用hellocharts-library-<version>.jar 然后在layout中设置 <lecho.lib.hellocharts.view.PieChartView ...

  4. iOS的属性声明:retain和strong的区别

    声明属性时用strong或者retain效果是一样的(貌似更多开发者更倾向于用strong).不过在声明Block时,使用strong和retain会有截然不同的效果.strong会等于copy,而r ...

  5. javascript判断键盘按键

    window.document.onkeydown = disableRefresh; function disableRefresh(evt){ evt = (evt) ? evt : window ...

  6. hdu 1009 贪心基础题

    B - 贪心 基础 Crawling in process... Crawling failed Time Limit:1000MS     Memory Limit:32768KB     64bi ...

  7. [翻译]How to Find a Solution ( 如何找到问题的答案,来自Top Coder 网站)

    原文链接: https://www.topcoder.com/community/data-science/data-science-tutorials/how-to-find-a-solution/ ...

  8. No1_6.字符串的基本操作2_Java学习笔记

    import java.util.Scanner; import java.util.regex.Pattern; public class HelloString2 { public static ...

  9. python中的StringIO模块

    python中的StringIO模块 标签:python StringIO 此模块主要用于在内存缓冲区中读写数据.模块是用类编写的,只有一个StringIO类,所以它的可用方法都在类中.此类中的大部分 ...

  10. ASP.NET MVC DefaultModelBinder

    转载自 Leo‘s Blog 看到很多ASP.NET MVC项目还在从request.querystring或者formContext里面获取数据,这实在是非常落后的做法.也有的项目建了大量的自定义的 ...