[Android]几种常用控件使用

android.view.View类呈现了最基本的UI构造块,一个View占据屏幕上的一个方形区域,并且负责绘制和事件处理

View是widgets的基类,常用来创建交互式的图形用户界面(GUI)

Android中的空间经常在布局文件中进行描述,在Java源代码中通过findViewById()函数根据ID获取控件的句柄,并且转换成实际的类型来使用


下面简单介绍下几种常用控件的使用


<Button>

xml:

 <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/textView1"
        android:layout_marginLeft="16dp"
        android:layout_marginTop="49dp"
        android:layout_toRightOf="@+id/textView1"
        android:text="Go" />
.java

Button bt = (Button)findViewById(R.id.button1);
bt.setOnClickListener(new OnClickListener(){


@Override
public void onClick(View v) {
	Log.v(TAG, "--onClick--");
	Intent i = new Intent();
	i.setClass(MainActivity.this, MainActivity1.class);
	startActivityForResult(i, iRequestCode);					
	}			
});
这里在定义了一个Button,在点击时,跳转到另一个界面


<ToggleButton>
.xml

 <ToggleButton
        android:id="@+id/tb1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBottom="@+id/button1"
        android:layout_marginLeft="38dp"
        android:layout_toRightOf="@+id/button1"
        android:textOn="On"
        android:textOff="Off" 
        android:onClick="onFunc"/>
android:textOn  --Button开时显示的文字

android:textOff  --Button关时显示的文字

android:onClick --指定点击时触发的函数,函数的参数必须为View


.java

public void onFunc(View view)
	{
		TextView txt = (TextView)findViewById(R.id.textView1);
		if( ( (ToggleButton)view).isChecked())
		{
			txt.setText("onFunc_On");
		}
		else
		{
			txt.setText("onFunc_Off");
		}
	}

还有一种方法,就是调用ToggleButton的setOnCheckedChangeListener接口,具体使用可以参考帮助文档,比如:

ToggleButton toggle = (ToggleButton) findViewById(R.id.togglebutton);
toggle.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {    
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {        
if (isChecked) { 
           // The toggle is enabled        }
 else {    
        // The toggle is disabled        }    
}});


<ImageView>

.xml

 <ImageView
        android:id="@+id/imageView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignRight="@+id/textView1"
        android:layout_below="@+id/button1"
        android:layout_marginRight="15dp"
        android:layout_marginTop="137dp" 
        android:maxWidth="600dip"
        android:maxHeight="600dip"
        android:padding="10dip"/>

maxWidth和maxHeight指定图像的最大宽度和高度,在缩放操作时会使用到

padding为图像留出一定宽度的边框

.java

ImageView iv =(ImageView)findViewById(R.id.imageView1);
		iv.setImageResource(R.drawable.ic_launcher);


几种设置图片的方法:

void setImageResource (int resId) // 设置图像源的资源ID
void setImageURI(Uri uri) // 设置图像源的URI
void setImageBitmap(Bitmap bm) // 设置一个Bitmap位图为图像源

<ImageButton>

<ImageButton
        android:id="@+id/imageButton1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:layout_alignTop="@+id/tb1"
        android:src="@android:drawable/ic_menu_edit" />

ImageButton继承自ImageView,扩展了ImageView,结合了图像和按钮的功能,具体可以参考其提供的接口

ImageButton im = (ImageButton)findViewById(R.id.im);
		im.setOnClickListener(new OnClickListener(){
			@Override
			public void onClick(View v) {
				TextView txt = (TextView)findViewById(R.id.textView1);
				txt.setText("Hei Hei ImageButton");
				
			}
			
		});



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值