在 Android 中使用 “android.widget.Button” 类,就可以展现一个按钮。
本教程,将展现一个按钮,并为此按钮添加一个点击事件监听,当用户点击按钮的时候,在浏览器中打开一个 URL。
一. 添加一个按钮
打开 “res/layout/activity_main.xml” 文件, 添加一个按钮
File : res/layout/activity_main.xml
二. Code Code
为按钮添加一个点击事件监听(Attach a click listener to the button.)
当用户点击按钮的时候,在浏览器中打开一个 URL, http://www.v2ex.com
本教程,将展现一个按钮,并为此按钮添加一个点击事件监听,当用户点击按钮的时候,在浏览器中打开一个 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;
@Override
protected 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;
@Override
protected 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() {
@Override
public void onClick(View v) {
String info = edit.getText().toString();
//showText.setText(info);
MainActivity.this.showText.setText("您刚才输入的内容为: " + info);
}
});
}
}
运行结果:
没有输入任何信息时:
输入信息后,点击按钮,则会: