Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發實例 >> 系出名門Android(5) - 控件(View)之TextView, Button, ImageButton, ImageView, CheckBox, RadioButton, AnalogClock, DigitalClock

系出名門Android(5) - 控件(View)之TextView, Button, ImageButton, ImageView, CheckBox, RadioButton, AnalogClock, DigitalClock

編輯:Android開發實例

介紹
在 Android 中使用各種控件(View)

  • TextView - 文本顯示控件
  • Button - 按鈕控件
  • ImageButton - 圖片按鈕控件
  • ImageView - 圖片顯示控件
  • CheckBox - 復選框控件
  • RadioButton - 單選框控件
  • AnalogClock - 鐘表(帶表盤的那種)控件
  • DigitalClock - 電子表控件



1、TextView 的 Demo
textview.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 - 文本顯示控件
    -->
    <TextView android:layout_width="fill_parent"
        android:layout_height="wrap_content" android:id="@ id/textView" />
        
</LinearLayout>


_TextView.java
 

package com.webabcd.view;

import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;

public class _TextView extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        this.setContentView(R.layout.textview);

        // 設置 Activity 的標題
        setTitle("TextView");
        
        TextView txt = (TextView) this.findViewById(R.id.textView);
        // 設置文本顯示控件的文本內容,需要換行的話就用“\n”
        txt.setText("我是 TextView\n顯示文字用的");
    }
}



2、Button 的 Demo
button.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:id="@ id/textView" />
    
     <!--
         Button - 按鈕控件
     -->    
    <Button android:id="@ id/button"
        android:layout_width="wrap_content" android:layout_height="wrap_content">
    </Button>
    
</LinearLayout>


_Button.java
 

package com.webabcd.view;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;

public class _Button extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        this.setContentView(R.layout.button);

        setTitle("Button");
        
        Button btn = (Button) this.findViewById(R.id.button);
        btn.setText("click me");
        
        // setOnClickListener() - 響應按鈕的鼠標單擊事件
        btn.setOnClickListener(new Button.OnClickListener(){
            @Override
            public void onClick(View v) {
                TextView txt = (TextView) _Button.this.findViewById(R.id.textView);
                txt.setText("按鈕被單擊了");
            }
        });
    }
}



3、ImageButton 的 Demo
imagebutton.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:id="@ id/textView" />
    
    <!--
        ImageButton - 圖片按鈕控件
    -->    
    <ImageButton android:id="@ id/imageButton"
        android:layout_width="wrap_content" android:layout_height="wrap_content">
    </ImageButton>
    
</LinearLayout>


_ImageButton.java
 

  package com.webabcd.view;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.ImageButton;
import android.widget.TextView;

public class _ImageButton extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        this.setContentView(R.layout.imagebutton);

        setTitle("ImageButton");
        
        ImageButton imgButton = (ImageButton) this.findViewById(R.id.imageButton);
        // 設置圖片按鈕的背景
        imgButton.setBackgroundResource(R.drawable.icon01);
        
        // setOnClickListener() - 響應圖片按鈕的鼠標單擊事件
        imgButton.setOnClickListener(new Button.OnClickListener(){
            @Override
            public void onClick(View v) {
                TextView txt = (TextView) _ImageButton.this.findViewById(R.id.textView);
                txt.setText("圖片按鈕被單擊了");
            }
        });
    }
}



4、ImageView 的 Demo
imageview.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">
    
    <!--
        ImageView - 圖片顯示控件
    -->
    <ImageView android:id="@ id/imageView" android:layout_width="wrap_content"
        android:layout_height="wrap_content"></ImageView>
        
</LinearLayout>


_ImageView.java
 

  package com.webabcd.view;

import android.app.Activity;
import android.os.Bundle;
import android.widget.ImageView;

public class _ImageView extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        this.setContentView(R.layout.imageview);

        setTitle("ImageView");
        
        ImageView imgView = (ImageView) this.findViewById(R.id.imageView);
        // 指定需要顯示的圖片
        imgView.setBackgroundResource(R.drawable.icon01);
    }
}



5、CheckBox 的 Demo
checkbox.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:id="@ id/textView" />
        
    <!--
        CheckBox - 復選框控件
    -->
    <CheckBox android:text="CheckBox01" android:id="@ id/chk1"
        android:layout_width="wrap_content" android:layout_height="wrap_content"></CheckBox>
    <CheckBox android:text="CheckBox02" android:id="@ id/chk2"
        android:layout_width="wrap_content" android:layout_height="wrap_content"></CheckBox>
    <CheckBox android:text="CheckBox03" android:id="@ id/chk3"
        android:layout_width="wrap_content" android:layout_height="wrap_content"></CheckBox>
        
</LinearLayout>


_CheckBox.java
 

  package com.webabcd.view;

import android.app.Activity;
import android.os.Bundle;
import android.widget.CheckBox;
import android.widget.CompoundButton;
import android.widget.TextView;

public class _CheckBox extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        this.setContentView(R.layout.checkbox);

        setTitle("CheckBox");
        
        CheckBox chk = (CheckBox) this.findViewById(R.id.chk1);
        // setOnCheckedChangeListener() - 響應復選框的選中狀態改變事件
        chk.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
            @Override
            public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
                TextView txt = (TextView) _CheckBox.this.findViewById(R.id.textView);
                txt.setText("CheckBox01 的選中狀態:"   String.valueOf(isChecked));                
            }
        });
    }
}



6、RadioButton 的 Demo
radiobutton.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:id="@ id/textView" />
        
    <!--
        RadioButton - 單選框控件
        RadioGroup - 對其內的單選框控件做分組
            checkedButton - 指定組內被選中的單選框的 ID
    -->
    <RadioGroup android:id="@ id/radioGroup"
        android:layout_width="fill_parent" android:layout_height="fill_parent"
        android:checkedButton="@ id/rad3" android:orientation="horizontal"
        android:gravity="center_vertical|center_horizontal">
        <RadioButton android:text="rad1" android:id="@ id/rad1"
            android:layout_width="wrap_content" android:layout_height="wrap_content"></RadioButton>
        <RadioButton android:text="rad2" android:id="@ id/rad2"
            android:layout_width="wrap_content" android:layout_height="wrap_content"></RadioButton>
        <RadioButton android:text="rad3" android:id="@ id/rad3"
            android:layout_width="wrap_content" android:layout_height="wrap_content"></RadioButton>
    </RadioGroup>
    
</LinearLayout>


_RadioButton.java
 

  package com.webabcd.view;

import android.app.Activity;
import android.os.Bundle;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.TextView;

public class _RadioButton extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        this.setContentView(R.layout.radiobutton);

        setTitle("RadioButton");
        
        RadioGroup group = (RadioGroup) this.findViewById(R.id.radioGroup);
        // setOnCheckedChangeListener() - 響應單選框組內的選中項發生變化時的事件
        group.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {    
            @Override
            public void onCheckedChanged(RadioGroup group, int checkedId) {
                TextView txt = (TextView) _RadioButton.this.findViewById(R.id.textView);
                txt.setText(((RadioButton)findViewById(checkedId)).getText()   " 被選中");                    
            }
        }); 
    }
}



7、AnalogClock 的 Demo
analogclock.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">
    
    <!--
        AnalogClock - 鐘表(帶表盤的那種)控件
    -->
    <AnalogClock android:id="@ id/analogClock"
        android:layout_width="wrap_content" android:layout_height="wrap_content">
    </AnalogClock>
    
</LinearLayout>


_AnalogClock.java
 

  package com.webabcd.view;

import android.app.Activity;
import android.os.Bundle;

public class _AnalogClock extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        this.setContentView(R.layout.analogclcok);

        setTitle("AnalogClock");
    }
}



8、DigitalClock 的 Demo
digitalclock.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">
    
    <!--
        DigitalClock - 電子表控件
    -->
    <DigitalClock android:id="@ id/digitalClock"
        android:layout_width="wrap_content" android:layout_height="wrap_content">
    </DigitalClock>
    
</LinearLayout>


_DigitalClock.java
 

  package com.webabcd.view;

import android.app.Activity;
import android.os.Bundle;

public class _DigitalClock extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        this.setContentView(R.layout.digitalclcok);

        setTitle("DigitalClcok");
    }
}



OK
[源碼下載]

 
  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved