Android基础————UI布局之高级控件详解

来源:互联网 发布:app上传图片java代码 编辑:程序博客网 时间:2024/05/16 09:48
UI高级控件:(1)SeekBar:可以拖动的进度条(2)ProgressBar:常用属性:style:style="?android:attr/progressBarStyle"默认的进度条样式style="?android:attr/progressBarStyleLarge" 图标变大style="?android:attr/progressBarStyleSmall" 图标变小style="?android:attr/progressBarStyleHorizontal"@代表引用资源@+代表创建资源?代表引用主体属性android:progress:当前进度值(电影播放的播放进度)android:secondaryProgress:二级进度值(电影播放的加载进度)android:max:进度的最大值android:indeterminate:是否模糊显示进度条(3)RatingBar:isIndicator 这个属性设置RatingBar是否以指示器显示,指示器不能调整,就不能滑动常用属性:style:style="?android:attr/ratingBarStyle"   大style="?android:attr/ratingBarStyleIndicator" 中style="?android:attr/ratingBarStyleSmall" 小android:numStars:星星的数量 必须是整数 默认是5android:isIndicator:RatingBar是否是一个指示器(用户无法进行更改) (就是若true,则无法拖动) android:rating:默认的评分 必须是浮点类型android:stepSize:评分的步长 浮点类型 什么是步长 当你分数增加或者减少的时候 是按照多大的分数增加减少的 默认0.5即半颗星星android:progressDrawable:拓展修改默认图标,代码如下:<!-- 这个xml文件是在res下新建的一个drawable文件夹下写的,然后再android:progressDrawable="@drawable/rating_bar_icon"引用一下<?xml version="1.0" encoding="utf-8"?><layer-list xmlns:android="http://schemas.android.com/apk/res/android" >        <item android:id="@android:id/background" android:drawable="@drawable/home_menu_person"></item>    <item android:id="@android:id/progress" android:drawable="@drawable/home_menu_person_on"></item></layer-list>(4)Spinner:可以展示批量的数据 默认状态收起,向下的小三角,当点击的时候Spinner展开显示,供用户选择常用属性:android:entries:设置Spinner资源值 一般是string-array数据代码中使用:ArrayAdapter:适配器相当于给spinner设置资源setSelection:设置默认选中条目setOnItemSelectedListener:设置条目选中监听://获取Spinner中被选中item的内容 有四种方式://第一种方法:通过被选择的item的position直接从数据源中获取textView.setText("您当前选择的科目是:"+list.get(position));    Toast.makeText(MainActivity.this, strs[position], Toast.LENGTH_SHORT).show();//第二种方法:利用parent来获取Object object = parent.getItemAtPosition(position);//    Toast.makeText(MainActivity.this, object.toString(), Toast.LENGTH_SHORT).show();第三种方式:利用Spinner的getSelectedItem()方法来获取    Object object2 = spinner.getSelectedItem();    Toast.makeText(MainActivity.this, object2.toString(), Toast.LENGTH_SHORT).show();//第四种方式:通过适配器对象获取String string = adapter.getItem(position);    Toast.makeText(MainActivity.this, string, Toast.LENGTH_SHORT).show();(5)ScrollView:可以滑动,滚动,手机的屏幕装不下我想要展示的数据,ScrollView可以让用户滑懂屏幕看超出屏幕的数据,只能放一个子控件ScrollView:竖直滑动;HorizontalScrollView:水平滑动;(6)AutoCompleteTextView:android:completionThreshold:AutoCompleteTextView 默认输入两个字符才会提示android:completionThreshold="1" 设置提示的字符数代码中使用:ArrayAdapter:适配器相当于给AutoCompleteTextView设置资源setAdapter:设置adapter赋值setOnItemClickListener:设置点击监听拓展addTextChangedListener:设置文本改变监听:1.* CharSequence s:当前正在改变的字符串* int start:改变字符串的起始位置* int before:改变之前这个位置的字符数* int count:改变之后这个位置字符数public void onTextChanged(CharSequence s, int start, int before, int count) {}2.* 当文本改变之前回调的方法* CharSequence s:改变之前的字符串* int start:改变字符串的起始位置* int count:改变之前这个位置的字符数* int after:改变之后的字符数public void beforeTextChanged(CharSequence s, int start, int count,int after) {}3.public void afterTextChanged(Editable s) {}(7)MultiAutoCompleteTextView注意:数据源放在strings.xml文件里,例如:<?xml version="1.0" encoding="utf-8"?><resources>    <string name="app_name">Day4MultiAutoCompleteTextViewDemo</string>    <string name="hello_world">Hello world!</string>    <string name="action_settings">Settings</string>    <!-- 数据源放这里 -->    <string-array name="countries">    <item >China</item>    <item >China</item>    <item >China</item>    <item >China</item>    <item >China</item>    <item >China</item>    </string-array></resources>然后在MainActivity.java文件中获取数据时用private void initData() {// TODO Auto-generated method stubString[] countries = getResources().getStringArray(R.array.countries);for(int i = 0;i<countries.length;i++){list.add(countries[i]);}}调用使用。常用属性:android:completionThreshold:AutoCompleteTextView 默认输入两个字符才会提示android:completionThreshold="1" 设置提示的字符数代码中使用:ArrayAdapter:适配器相当于给AutoCompleteTextView设置资源setAdapter:设置adapter赋值setTokenizer:用户必须提供一个MultiAutoCompleteTextView.Tokenizer(分词器)设置分隔符来区分不同的子串

0 0
原创粉丝点击