一、实验内容
- 建立一个“ButtonDemo”的程序,包含Button和ImageButton两个按钮,上方是“Button按钮”,下方是一个ImageButton控件?
- 建立一个“CheckboxRadiobuttonDemo”程序,包含五个控件,从上至下分别是TextView01、CheckBox01、 CheckBox02、RadioButton01、RadioButton02,当选择RadioButton01, RadioButton02则无法选择?
3.建立一个“TabDemo”程序,包含三个XML文件,分别为tab1.xml、tab2.xml和tab3.xml,这3个文件分别使用线性布局、相对布局和绝对布局示例中的main.xml的代码,并将布局的ID分别定义为layout01、layout02和layout03?
4.建立一个“MyContextMenu”程序,来完成Android菜单的功能。
二、实验仪器、设备
硬件:PC 微型计算机、1G以上内存,40G以上硬盘
软件:Windows XP,Eclipse , JDK , Android SDK
三、实验步骤
1. ButtonDemo:
- 创建ButtonDemo工程
打开Android Studio,点击Start a new Android Studio prohect;
在Application name中输入ButtonDemo,点击next;
勾选Phone and Tablet,点击next;
勾选Empty Activity,点击next;
在Activity Name中填写ButtonDemo,在Layout Name中添加Main点击finish。 - 编写程序代码
ButtonDemo.java:
package com.example.buttpndemo;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.ImageButton;
import android.widget.TextView;
public class ButtonDemo extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button button=(Button)findViewById(R.id.Button01);
ImageButton imageButton=(ImageButton)findViewById(R.id.ImageButton01);
button.setText("Button按钮");
imageButton.setImageResource(R.drawable.girl);
final TextView textView=(TextView)findViewById(R.id.TextView01);
//(1)把按钮注册到各自的监听器
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
textView.setText("Button按钮");
}
});
//把按钮注册到同一个监听器
Button.OnClickListener buttonListener=new Button.OnClickListener(){
@Override
public void onClick(View v) {
switch (v.getId()){
case R.id.Button01:
textView.setText("Button按钮");
return;
case R.id.ImageButton01:
textView.setText("ImageButton按钮");
return;
}
}
};
button.setOnClickListener(buttonListener);
imageButton.setOnClickListener(buttonListener);
}
}
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:id="@+id/TextView01"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello"/>
<Button android:id="@+id/Button01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button01" >
</Button>
<ImageButton android:id="@+id/ImageButton01"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
</ImageButton>
</LinearLayout>
AndroidManifest.xml:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.buttpndemo" >
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme" >
<activity android:name=".ButtonDemo" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
3)运行程序:
点击Run按钮选择合适的虚拟或者Android设备进行程序调试。
图1点击BUTTON按钮 图2点击imageButton按钮
2.CheckboxRadioDemo:
- 创建CheckboxRadiobuttonDemo工程
打开Android Studio,点击Start a new Android Studio prohect;
在Application name中输入CheckboxRadiobuttonDemo,点击next;
勾选Phone and Tablet,点击next;
勾选Empty Activity,点击next;
在Activity Name中填写CheckboxRadiobuttonDemo,在Layout Name中添加Main点击finish。 - 编写程序代码
CheckboxRadiobuttonDemo.java:
package com.example.checkboxradiobuttondemo;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.CheckBox;
import android.widget.RadioButton;
import android.widget.TextView;
public class CheckboxRadiobuttonDemo extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
final TextView textView=(TextView)findViewById(R.id.TextView01);
//CHECKBOX
final CheckBox checkBox1=(CheckBox)findViewById(R.id.CheckBox01);
final CheckBox checkBox2=(CheckBox)findViewById(R.id.CheckBox02);
CheckBox.OnClickListener checkboxListener=new CheckBox.OnClickListener(){
@Override
public void onClick(View v) {
switch (v.getId()){
case R.id.CheckBox01:
textView.setText("CheckBox01,isChecked:"+String.valueOf(checkBox1.isChecked()));
return;
case R.id.CheckBox02:
textView.setText("CheckBox02,isChecked:"+String.valueOf(checkBox2.isChecked()));
return;
}
}
};
checkBox1.setOnClickListener(checkboxListener);
checkBox2.setOnClickListener(checkboxListener);
//RadioButton
final RadioButton radioButton1 = (RadioButton)findViewById(R.id.RadioButton01);
final RadioButton radioButton2 = (RadioButton)findViewById(R.id.RadioButton02);
RadioButton.OnClickListener radioButtonListener = new RadioButton.OnClickListener(){
@Override
public void onClick(View v) {
switch(v.getId()){
case R.id.RadioButton01: