Android控件-多選按鈕、單選按鈕

佈局方法:

Linearlayout線性佈局:

android:orientation="vertical"則每個控件佔據一行

android:orientation="horizontal"則每個控件佔據一列

 

長度單位:

px---像素

Dip--(dots per inch)

Dp--(device independent piexls)通常用來針對控件的大小

換算公式:px=dp*(dpi/160)

dpi160的屏幕上:1dp=1px

 

Sp:scaled pixels,通常用來指定字體的大小

 

 

控件之------多選按鈕:

 

實現代碼:

package org.jason;

 

import android.app.Activity;

import android.os.Bundle;

import android.view.Menu;

importandroid.view.View;

importandroid.view.View.OnClickListener;

import android.widget.CheckBox;

import android.widget.CompoundButton;

import android.widget.CompoundButton.OnCheckedChangeListener;

 

publicclass MainActivity extends Activity {

private CheckBox runB;

private CheckBox swimB;

private CheckBox sleepB;

 

@Override

protectedvoid onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

//setContentView(R.layout.activity_main);

setContentView(R.layout.liner_layout);

//通過findViewById方法生成控件對象

runB=(CheckBox)findViewById(R.id.runid);

swimB=(CheckBox)findViewById(R.id.swimid);

sleepB=(CheckBox)findViewById(R.id.sleepid);

/*OnBoxClickListener listener=new OnBoxClickListener();

runB.setOnClickListener(listener);

sleepB.setOnClickListener(listener);

swimB.setOnClickListener(listener);*/

//生成listener對象

OnCheckedListener listener=new OnCheckedListener();

//調用對象的setOnCheckedChangeListener方法綁定監聽器

runB.setOnCheckedChangeListener(listener);

sleepB.setOnCheckedChangeListener(listener);

swimB.setOnCheckedChangeListener(listener);

}

//聲明一個類,實現OnCheckedChangeListener接口

class OnCheckedListener implements OnCheckedChangeListener{

 

@Override

publicvoid onCheckedChanged(CompoundButton buttonView,

boolean isChecked) {

// TODO Auto-generated method stub

//getId()方法通過控件對象獲取Id

//如果全選按鈕,則使用setCheck(boolean checked)方法

if(buttonView.getId()==R.id.runid){

System.out.println("run");

}elseif(buttonView.getId()==R.id.swimid){

System.out.println("swim");

}elseif(buttonView.getId()==R.id.sleepid){

System.out.println("sleep");

}

//isChecked返回值boolean類型,判斷是否選中

if(isChecked){

System.out.println("checked");

}else{

System.out.println("cancel");

}

}

}

/*class OnBoxClickListener implements OnClickListener{

 

@Override

public void onClick(View view) {

CheckBox box=(CheckBox)view;

if(view.getId()==R.id.runid){

System.out.println("run");

}else if(view.getId()==R.id.sleepid){

System.out.println("sleep");

}else if(view.getId()==R.id.swimid){

System.out.println("swim");

}

if(box.isChecked()){

System.out.println("box is checked");

}else{

System.out.println("box is unchecked");

}

 

}

單選按鈕(RadioButton)用法:

<RadioGroup>

<RadioButton

Andriod:…/>

<RadioButton

Android…./>

</RadioGroup>

Activity.java的方法與多選按鈕類似

Radiobuttoncheckbox都使用同一個onCheckedChangedlistener接口,而radioGroup實現的是Radio接口

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章