Android基本控件

来源:互联网 发布:ubuntu文件夹重命名 编辑:程序博客网 时间:2024/05/17 22:35

(1):TextView 显示文本框

TextView 类结构:    java.lang.Object        android.view.View            android.widget.TextView属性:    1)android:id=""     控件的id    2)android:layout_width="20dp"       控件的宽度    3)android:layout_height="20dp"      控件的高度    4)android:text=""       文本内容    5)android:textSize="20sp"       文本大小(字体的大小)    6)android:textColor="#00ff00"       文本颜色    7)android:background=""     控件背景*   8)android:autoLink=""       设置文本内容的类型        web:网址        email:邮件        phone:电话簿        map:地图        all:自动匹配        none:无*   9)android:drawableLeft=""       设置文本旁边图片        android:drawableLeft            android:drawableRight            android:drawableTop            android:drawableBottom      10)android:ellipsize=""     用于文字长度超过控件长度的情况         ”start”—-省略号显示在开头;        ”end” --省略号显示在结尾;                           ”middle”—-省略号显示在中间;        ”marquee” ——以跑马灯的方式显示(动画横向移动)            跑马灯例子:            <TextView                android:id="@+id/textView"                android:layout_width="wrap_content"                android:layout_height="wrap_content"                android:ellipsize="marquee"     跑马灯形式                android:focusable="true"    允许获取焦点                android:focusableInTouchMode="true"                android:singleLine="true"   单行显示                android:text="nihaonihanihaonihanihaonihanihaonihanihaonihanihaoniha"                android:textSize="36sp"                    />      11)android:typeface=""  设置文本的字体类型       “sans”, “serif”, “monospace"    12)android:textType=""  设置文本的字体风格        bold|italic(既粗又斜)    getText();获得文本

(2)EditText:输入文本框

EditText 类结构:    java.lang.Object        android.view.View            android.widget.TextView                android.widget.EditTextEditText与TextView的不同:    EditText类继承自TextView类,EditText与TextView最大的不同就是用户可以对EditText控件进行编辑。属性:特有属性*   1)android:hint="请输入搜索内容...."        输入提示文本(鼠标点击文字就没有了)    2)android:ems="10"  输入框的长度    3)android:textColorHint=""  设置提示内容的文字颜色*   4)android:inputType="number"    输入文本类型        常用类型(还有很多)            1.  android:inputType="textPersonName"             2.  android:inputType="textPassword"             3.  android:inputType="numberPassword"             4.  android:inputType="textEmailAddress"             5.  android:inputType="phone"             6.  android:inputType="textPostalAddress"             7.  android:inputType="time"             8.  android:inputType="date"             9.  android:inputType="number" *   5)android:dights="" 限制输入内容          例如:123a---只能输入数字1,2,3与字母a    6)android:maxlength—设置文字的最多个数       getText();获得文本使用:java代码中    private EditText editText;    editText = (EditText) findViewById(R.id.editText);    //设置文本框内容:    editText.setText("1536班");    //获得文本框内容    editText.getText().toString();监听:editText.addTextChangedListener(new TextWatcher({    //重写方法(三个)    beforeText    onText    //获得输入的信息    aftertextChange(Editable s){    s.toString();    }}));    注:editText.append属性 ; 不断在后面追加   

(3):Button按钮

属性:    1)android:text=""   设置文字    2)android:drawableTop="@drawable/ic_launcher"   设置旁边图片(按钮上面放图标)    3)android:drawablePadding=""    设置内边距    4)android:onClick="方法名"        方法名:在java中定义与之相同名称的方法:返回值为void,传入参数为View使用:给按钮设置监听(setOnClickListener---实现的接口OnClickListener)    五种方式:        匿名内部类        XML中设置监听        局部内部类                   全局实现OnClickListener,用switch实现        外部类    //声明初始化控件控件    private Button button;    button = (Button) findViewById(R.id.button);    方式一:匿名内部类监听事件,实现接口,重写OnClick方法:        button.setOnClickListener(new OnClickListener() {            @Override            public void onClick(View v) {                // 做监听后的动作                count++;                Log.i("---", "Listener is load");                editText.setText(count + "");            }        });    方式二:XML中设置监听        XML中代码:android:onClick="listener"        public void listener(View view) {            // 做监听的动作            Log.i("---", "XML中监听的按钮");            count++;            editText.setText(count + "b");        }    方式三:局部内部类        好处:如果几个按钮的作用相同,可以代码复用        class MyOnClick implements OnClickListener {            @Override            public void onClick(View v) {                Log.i("---", "创建类给按钮加监听了");                count++;                editText.setText(count + "a");                }            }        // 绑定监听        MyOnClick myOnclick = new MyOnClick();        button.setOnClickListener(myOnclick);       方式四:    public class MainActivity extends Activity implements OnClickListener {        @Override        public void onClick(View v) {            // TODO Auto-generated method stub            switch (v.getId()) {            case R.id.button3:                Log.i("000", "整个人都不好了");                count++;                editText.setText(count + "c");                break;            default:                break;            }        }    }

(4)ImageView:显示图片控件

类结构:    java.lang.Object        android.view.View            android.widget.ImageView属性:    1)android:src="@drawable/ic_launcher"   设置图片来源*   2)android:scaleType="center"    设置所显示的图片如何缩放或移动,以适应ImageView的大小        matrix  :(矩阵左上)保持原图大小、从左上角的点开始,以矩阵形式绘图。         fitXY :(全屏)把图片按照指定的大小在View中显示,拉伸显示图片,不保持原比例,填满View.         fitStart :(居中凑齐)把图片按比例扩大(缩小)到View的宽度,显示在View的上部分位置         fitCenter :把图片按比例扩大(缩小)到View的宽度,居中显示         fitEnd :(居下凑齐)把图片按比例扩大(缩小)到View的宽度,显示在View的下部分位置         center : 以原图的几何中心点和ImagView的几何中心点为基准,按图片的原来size居中显示,不缩放, 当图片长/宽超过View的长/宽,则截取图片的居中部分显示ImageView的size. 当图片小于View 的长宽时,只显示图片的size,不剪裁。         centerCrop (局部中心放大):以原图的几何中心点和ImagView的几何中心点为基准,按比例扩大(图片小于View的宽时)图片的size。 居中显示,使得图片长 (宽)等于或大于View的长(宽),并按View的大小截取图片。 当原图的size大于ImageView时,按比例缩小图片,使得长宽中有一向等于ImageView,另一向大于ImageView。 实际上,使得原图的size大于等于ImageView         centerInside (局部中心缩小):以原图的几何中心点和ImagView的几何中心点为基准,将图片的内容完整居中显示, 通过按比例缩小原来的size使得图片长(宽)等于或小于ImageView的长(宽)使用:java代码中---设置图片        private ImageView imageView;        imageView = (ImageView)findViewById(R.id.image);    获得图片:    方式一:直接从res中取图片        image.setImageResource(R.drawable.ic_launcher);    方式二:通过Bitmap对象,通过bitMap工厂进行解码        Bitmap bitMap = BitmapFactory.decodeResource(getResources(), R.drawable.ha);        image.setImageBitmap(bitMap);    方式三:通过Drawable对象        Drawable drawable = getResources().getDrawable(R.drawable.ha);        image.setImageDrawable(drawable);    方式四:通过Uri        // 得到所选的图片        @Override        protected void onActivityResult(int requestCode, int resultCode, Intent data) {            // TODO Auto-generated method stub            super.onActivityResult(requestCode, resultCode, data);            if (requestCode == requestCode && data != null) {                Uri uri = data.getData();                image.setImageURI(uri);            }        }

(5)ImageButton:视图按钮控件

Button与ImageButton区别:       共有的特征:        都可以作为一个按钮产生点击事件    不同点:        Button有text的属性,ImageButton没有        ImageButton有src属性,Button没有

(6)CheckBox:复选框

类结构:    java.lang.Object        android.view.View            android.widget.TextView                android.widget.Button                    android.widget.CompoundButton                        android.widget.CheckBox常用属性:    XML中    android:checked="true"  默认选中状态    java中   isChecked:返回Boolean类型,是否被选中            getText();获得文本使用:java代码中(为每一个CheckBox加监听setOnCheckedChangeListener,实现的接口OnCheckedChangeListener())        private CheckBox checkAll;    checkAll = (CheckBox)findViewById(R.id.checkBox4);    checkAll.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {                  @Override        public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {            // TODO Auto-generated method stub            if(isChecked){                checkEat.setChecked(true);                checkSleep.setChecked(true);                checkDa.setChecked(true);            }            if(!isChecked){                checkEat.setChecked(false);                checkSleep.setChecked(false);                checkDa.setChecked(false);            }        }    });

(7)RadioButton及RadioGroup

类结构介绍:    java.lang.Object        android.view.View            android.view.ViewGroup                android.widget.LinearLayout                    android.widget.RadioGroup    java.lang.Object        android.view.View            android.widget.TextView                android.widget.Button                    android.widget.CompoundButton                        android.widget.RadioButton    RadioGroup是RadioButton的一个集合,提供多选一机制    注意:RadioButton继承于Button,所以具有普通按钮的各种属性,但是与普通按钮不同的是,RadioButton提供了可选中的功能。        在使用RadioButton的时候,要使用RadioGroup来包围起这些RadioButton。    【备注:】RadioGroup是LinearLayout的子类,所以RadioGroup本质上是一个存放RadioButton的布局容器。RadioGroup属性:    android:orientation(vertical垂直,horizontal水平)        决定当前的RadioGroup中的RadioButton以什么形式排列RadioButton属性:    setChecked(true);   设置按钮为选中状态    isChecked;  返回Boolean类型,true为选中状态,false为没选中状态    getText();获得文本使用:监听---java代码中    private RadioGroup radioGroup;    radioGroup = (RadioGroup)findViewById(R.id.radioGroup1);    //监听    radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {                    @Override        //checkedId为这一组单选按钮中被选中的按钮的id        public void onCheckedChanged(RadioGroup group, int checkedId) {            switch (checkedId) {            case R.id.radioBoy:                Toast.makeText(MainActivity.this, "男", Toast.LENGTH_SHORT).show();                break;            case R.id.radioGirl:                Toast.makeText(MainActivity.this, "女", Toast.LENGTH_LONG).show();                break;            }                       }               });
0 0
原创粉丝点击