Android Button Example-onClickListener-Intent

来源:互联网 发布:软件检测工程师 编辑:程序博客网 时间:2024/05/16 08:53
在 Android 中使用 “android.widget.Button” 类,就可以展现一个按钮。
本教程,将展现一个按钮,并为此按钮添加一个点击事件监听,当用户点击按钮的时候,在浏览器中打开一个 URL。


一. 添加一个按钮
打开 “res/layout/activity_main.xml” 文件, 添加一个按钮

File : res/layout/activity_main.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="fill_parent"    android:layout_height="fill_parent"android:orientation="vertical"        tools:context=".MainActivity" >        <Button        android:id="@+id/button1"        android:layout_width="wrap_content"        android:layout_height="wrap_content"         android:text="按钮-V2EX.com"/></LinearLayout>



二. Code Code
为按钮添加一个点击事件监听(Attach a click listener to the button.)

当用户点击按钮的时候,在浏览器中打开一个 URL,   http://www.v2ex.com

File : MainActivity.java

package com.jiangge.buttonurldemo;import android.app.Activity;import android.content.Intent;import android.net.Uri;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;public class MainActivity extends Activity {Button button;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);addListenerOnButton();}public void addListenerOnButton(){button = (Button) findViewById(R.id.button1);button.setOnClickListener(new OnClickListener(){public void onClick(View arg0){Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.v2ex.com"));startActivity(browserIntent);}});}}


三、运行结果

1、一个普通的按钮



2、点击按钮,就在浏览器中打开了一个URL




四、总结:


一个典型的按钮代码模板:

 public class MyActivity extends Activity {     protected void onCreate(Bundle icicle) {         super.onCreate(icicle);         setContentView(R.layout.content_layout_id);         final Button button = (Button) findViewById(R.id.button_id);         button.setOnClickListener(new View.OnClickListener() {             public void onClick(View v) {                 // Perform action on click             }         });     } }


参考文献:

1、官方文档

2、http://www.mkyong.com/android/android-button-example/



============================================================

再来一个例子:


File: layout/activity_main.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="fill_parent"    android:layout_height="fill_parent"    android:orientation="vertical"    tools:context=".MainActivity" >        <EditText         android:id="@+id/editText"        android:layout_width="wrap_content"        android:layout_height="wrap_content"/>     <Button android:id="@+id/btn"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="@string/btn_text"/>    <TextView        android:id="@+id/mytext"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="@string/show_text" /></LinearLayout>




File: values/strings.xml

<?xml version="1.0" encoding="utf-8"?><resources>    <string name="app_name">ClickListenerDemo</string>    <string name="action_settings">Settings</string>    <string name="show_text">输入的内容为:</string>    <string name="btn_text">显示输入信息</string></resources>



File:MainActivity.java

package com.jiangge.clicklistenerdemo;import android.os.Bundle;import android.app.Activity;import android.view.Menu;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.EditText;import android.widget.TextView;public class MainActivity extends Activity {private EditText edit;private Button but;private TextView showText;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);super.setContentView(R.layout.activity_main);this.edit = (EditText)super.findViewById(R.id.editText);this.but = (Button)super.findViewById(R.id.btn);this.showText  = (TextView)super.findViewById(R.id.mytext);this.but.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {String info = edit.getText().toString();//showText.setText(info);MainActivity.this.showText.setText("您刚才输入的内容为: " + info);}});}}



运行结果:

没有输入任何信息时:




输入信息后,点击按钮,则会:


原创粉丝点击