Android入门基础之控件
2017-02-11 12:45
267 查看
TextView:显示文本框控件
EditText:输入文本框
TextView与EditText共有常用属性:
android:id——控件的id
android:layout_width——控件的宽度
android:layout_height——控件的高度
android:text——文本内容
android:textSize——文本大小
android:textColor——文本颜色
android:background——控件背景
EditText有TextView没有的属性:
android:hint——输入提示文本
android:inputType——输入文本类型
属性值:
wrap_content:包裹实际文本内容
martch_parent: 当前控件铺满父类容器——2.3api之后添加的一个属性值
fill_parent:当前控件铺满父类容器——2.3api之前添加的一个属性值
ImageView:显示图片的一个控件
属性:android:src=”@drawable/img_name”——ImageView的内容图像
android:background=”@drawable/img_name”——ImageView背景图片
android:background=”#000”——ImageView的RGB颜色
Button按钮与ImageButton图片按钮
1、共有特点:都可以作为一个按钮产生点击事件;
2、不同点:Button有text属性,ImageButton没有;ImageButton有src属性,Button没有
3、产生明显的点击效果
【注意】存放当前应用程序所用的字符串等数据,放在values下的string.xml下,如
Button和ImageButton的监听事件
onClick事件
1、Button和ImageButton都拥有一个onClick事件,通过自身的.setOnClickListener(OnClickListener)方法添加点击事件;
2、所有控件都有一个onclick的事件,不仅仅Button和ImageButton拥有;
3、通过点击事件的监听可以实现点击按钮之后要发生什么动作。
监听事件实现的几种写法:
1、匿名内部类的实现;
2、独立类的实现;
3、实现接口的方式来实现。
AutoCompleteTextView与MultiAutoCompleteTextView控件
1)AutoCompleteTextView控件
功能:动态匹配输入的内容,如百度搜索引擎当输入文本时可以根据内容显示匹配的热门信息;
独特属性:android
4000
:completion Threshold=”2”——设置输入多少字符时自动匹配
2)MultiAutoCompleteTextView控件
功能:可支持选择多个值(在多次输入的情况下),分别用分隔符分开,并且在每个值选中的时候再次输入值时会自动去匹配,可用在发短信,发邮件时选择联系人这种类型当中;
独特属性:android:completion Threshold=”2”——设置输入多少字符时自动匹配;
设置分隔符:
mtxt.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer());
ToggleButton控件
ToggleButton控件的两种状态:
选中和未选中状态,并且需要为不同的状态设置不同的显示文本;
ToggleButton属性:
android:checked=”true”,默认false
android:textOff=”关”
android:textOff=”开”
CheckBox复选框
两种状态,选中(true),未选中(false):android:checked=”true”默认false
RadioButton和RadioGroup
1、RadioGroup:RadioButton的一个集合,提供多选一机制
属性:android:orientation=”vertical”——垂直排列
android:orientation=”horizontal”——水平排列
到这里Android入门基础之控件就讲完了,下次我们一起来看Android入门基础之布局
EditText:输入文本框
TextView与EditText共有常用属性:
android:id——控件的id
android:layout_width——控件的宽度
android:layout_height——控件的高度
android:text——文本内容
android:textSize——文本大小
android:textColor——文本颜色
android:background——控件背景
EditText有TextView没有的属性:
android:hint——输入提示文本
android:inputType——输入文本类型
属性值:
wrap_content:包裹实际文本内容
martch_parent: 当前控件铺满父类容器——2.3api之后添加的一个属性值
fill_parent:当前控件铺满父类容器——2.3api之前添加的一个属性值
ImageView:显示图片的一个控件
属性:android:src=”@drawable/img_name”——ImageView的内容图像
android:background=”@drawable/img_name”——ImageView背景图片
android:background=”#000”——ImageView的RGB颜色
Button按钮与ImageButton图片按钮
1、共有特点:都可以作为一个按钮产生点击事件;
2、不同点:Button有text属性,ImageButton没有;ImageButton有src属性,Button没有
3、产生明显的点击效果
【注意】存放当前应用程序所用的字符串等数据,放在values下的string.xml下,如
<string name="button_name">登录</string>//string.xml中代码 android:text="@string/button_name"//访问对应string.xml中内容
Button和ImageButton的监听事件
onClick事件
1、Button和ImageButton都拥有一个onClick事件,通过自身的.setOnClickListener(OnClickListener)方法添加点击事件;
2、所有控件都有一个onclick的事件,不仅仅Button和ImageButton拥有;
3、通过点击事件的监听可以实现点击按钮之后要发生什么动作。
监听事件实现的几种写法:
1、匿名内部类的实现;
package com.aop.demo; import android.app.Activity; public class MainActivity extends Activity{ private Button loginButton; @Override protected void onCreate(Bundle saveInstanceState){ super.onCreate(saveInstanceState); setContentView(R.layout.activity_main); loginButton=(Button)findViewById(R.id.button1);//初始化findViewById返回的是一个View的对象 //设置Button的监听器,通过监听器实现我们点击Button要操作的事情 /*1、通过匿名内部类实现*/ loginButton.setOnclickListener(new OnclickListener(){ @Override public void onClick(View arg0){ System.out.println("Button被点击了");//在当前方法中监听点击Button的动作 } }); } }
2、独立类的实现;
//独立类实现 public class MainActivity extends Activity implements OnclickListener{ private ImageButton imgBt; @Override protected void onCreate(Bundle saveInstanceState){ super.onCreate(saveInstanceState); setContentView(R.layout.activity_main); loginButton.setOnclickListener(listener); } OnclickListener listener=new OnclickListener(){ @Override public void onClick(View v){ log.i("tag","第二种方式实现");//打印日志到控制台 } }; }
//点击事件**外部类**的写法和作用 loginButton.setOnclickListener(new MyOnclickListener(){ @Override public void onClick(View v){ super.onClick(v);//调用父类的onClick Toast.makeText(MainActivity.this,"loginButton要执行的逻辑",1).show(); } }); //OnclickListener是一个接口,多个可以实现同样功能 class MyOnclickListener implements OnclickListener{ @Override public void onClick(View v){ v.setAlpha(0.5f);//改变透明度 } }
3、实现接口的方式来实现。
package com.aop.demo; import android.app.Activity; public class MainActivity extends Activity implements OnclickListener{ private ImageButton imgBt; @Override protected void onCreate(Bundle saveInstanceState){ super.onCreate(saveInstanceState); setContentView(R.layout.activity_main); imgBt=(ImageButton)findViewById(R.id.imageButton1); /*通过实现一个接口事件实现*/ imgBt.setOnclickListener(this); } @Override public void onClick(View v){ log.i("tag","第三种方式实现");//打印日志到控制台 } }
AutoCompleteTextView与MultiAutoCompleteTextView控件
1)AutoCompleteTextView控件
功能:动态匹配输入的内容,如百度搜索引擎当输入文本时可以根据内容显示匹配的热门信息;
独特属性:android
4000
:completion Threshold=”2”——设置输入多少字符时自动匹配
2)MultiAutoCompleteTextView控件
功能:可支持选择多个值(在多次输入的情况下),分别用分隔符分开,并且在每个值选中的时候再次输入值时会自动去匹配,可用在发短信,发邮件时选择联系人这种类型当中;
独特属性:android:completion Threshold=”2”——设置输入多少字符时自动匹配;
设置分隔符:
mtxt.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer());
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/container" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="com.exe.demo.MainActivity" tools:ignore="MergeRootFrame" android:orientation="vertical > <AutoCompleteTextView android:completionThreshold="3" android:id="@+id/autoCompleteTextView1" android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="请输入你要搜索的关键词" > </AutoCompleteTextView> <MultiAutoCompleteTextView android:id="@+id/multiAutoCompleteTextView1" android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="请输入你的收件人" > </MultiAutoCompleteTextView> </LinearLayout>
package com.exe.demo; import android.app.Activity; import android.os.Bundle; import android.widget.ArrayAdapter; import android.widget.AutoCompleteTextView; import android.widget.MultiAutoCompleteTextView; public class MainActivity extends Activity { //初始化数据源——数据源去匹配文本框中输入的内容 private String[] res={"beijing1","beijing2","beijing3","shanghai1","shanghai2"}; private AutoCompleteTextView acTextView; private MultiAutoCompleteTextView macTextView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //初始化控件 acTextView=(AutoCompleteTextView)findViewById(R.id.autoCompleteTextView1); //需要一个适配器 ArrayAdapter<String> adapter=new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,res); //将adapter与当前AutoCompleteTextView绑定 acTextView.setAdapter(adapter); macTextView=(MultiAutoCompleteTextView)findViewById(R.id.multiAutoCompleteTextView1); macTextView.setAdapter(adapter); //设置以逗号为分隔符 macTextView.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer()); } }
ToggleButton控件
ToggleButton控件的两种状态:
选中和未选中状态,并且需要为不同的状态设置不同的显示文本;
ToggleButton属性:
android:checked=”true”,默认false
android:textOff=”关”
android:textOff=”开”
CheckBox复选框
两种状态,选中(true),未选中(false):android:checked=”true”默认false
<CheckBox android:id="@+id/checkBox1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="篮球" />
public class MainActivity extends ActionBarActivity { private CheckBox checkBox; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); checkBox=(CheckBox)findViewById(R.id.checkBox1);//初始化 checkBox.setOnCheckedChangeListener(new OnCheckedChangeListener(){ public void onCheckedChanged(CompoundButton buttonView,boolean isChecked){ Log.i("tag", isChecked+""); if(isChecked){ String text = checkBox.getText().toString(); Log.i("tag",text); } } }); } }
RadioButton和RadioGroup
1、RadioGroup:RadioButton的一个集合,提供多选一机制
属性:android:orientation=”vertical”——垂直排列
android:orientation=”horizontal”——水平排列
<RadioGroup android:id="@+id/radioGroup1" android:layout_width="wrap_content" android:layout_height="wrap_content" > <RadioButton android:id="@+id/radio0" android:layout_width="wrap_content" android:layout_height="wrap_content" android:checked="true" android:text="男" /> <RadioButton android:id="@+id/radio1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="女" /> </RadioGroup>
public class MainActivity extends ActionBarActivity implements OnCheckedChangeListener{ private RadioGroup rg; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); rg=(RadioGroup)findViewById(R.id.radioGroup1);//初始化 rg.setOnCheckedChangeListener(this);//监听器 } @Override public void onCheckedChanged(RadioGroup group, int checkedId) { // TODO Auto-generated method stub switch(checkedId){ case R.id.radio0: Log.i("tag","你当前是一个男孩"); break; case R.id.radio1: Log.i("tag","你当前是一个女孩"); break; default: break; } } }
到这里Android入门基础之控件就讲完了,下次我们一起来看Android入门基础之布局
相关文章推荐
- android基础入门控件详解(5)
- Android零基础入门第17节:Android开发第一个控件,TextView属性和方法大全
- android基础入门控件详解(6)
- Android零基础入门第17节:Android开发第一个控件,TextView属性和方法大全
- android基础入门控件详解(3)
- Android零基础入门第17节:Android开发第一个控件,TextView属性和方法大全
- Android零基础入门第17节:Android开发第一个控件,TextView属性和方法大全
- android基础控件学习学习(1)【入门篇】
- android基础入门控件详解(4)
- 清清月儿 .NET万花筒 Asp.net技术 Asp.net教程 Asp.net源码 Asp.net基础 Asp.net控件 Asp.net入门
- Android基础(四) 常用控件
- Android-SQLite3 超基础入门
- Android基础(四) 常用控件 - ProgressBar
- Android基础(四) 常用控件的事件处理
- Android-SQLite3 超基础入门
- Android入门之Android SQLite基础
- Android-SQLite3 超基础入门
- Android-SQLite3 超基础入门
- Android 基础控件说明
- Android基础教程(三)之-----简单的Button事件响应综合提示控件Toast的应用