TextView 文本显示
EditText 文本输入框
AutoCompleteTextView 带提示的输入框
Button 按钮
ImageButton 图片按钮
ImageView 图片
ToggleButton 开关按钮
Switch 开关按钮
TextClock 文本时钟
ScrollView 滚动边框(纵向)
HorizontalScrollView 滚动边框(横向)
CheckBox 复选按钮
RadioButton 单选按钮
CheckedTextView 带文字的多选按钮
RadioGroup 单选按钮组
Spinner 下拉菜单
SeekBar 滑动
RatingBar 评分
ListView 列表
WebView 内置浏览器
Space 空白组件
include 引入布局
ViewStub 惰性布局
TextView
android:autoLink="all" 匹配字符
EditText
android:digits="0123abcd" 限定字符
android:inputType="textEmailAddress" textPassword number 等
button.setError="错误信息"
ToggleButton
android:textOn="开"
android:textOff="关"
android:checked="true"
ToggleButton.isChecked() 判断状态
RadioButton& CheckBox
.isChecked() 判断选中状态
CheckedTextView
android:checkMark="?android:attr/listChoiceIndicatorMultiple"
.toggle(); 反转状态
.setChecked(true); 默认未选中
.setCheckMarkDrawable()设置点击后的图片
.setOnClickListener() 可绑定点击事件
ScrollView
里面放入一个布局在放入组件
RadioGroup
radioGroup1=(RadioGroup)this.findViewById(R.id.radioGroup1);
int num=radioGroup1.getChildCount();
for(int i=0;i<num;i++){
RadioButton RadioButton=(RadioButton)radioGroup1.getChildAt(i);
RadioButton.setText("设置选择"+i+"..");
}
这样更严谨一些。
if(linear.getChildAt(i) instanceof CheckBox)
{
CheckBox chk=(CheckBox)linear.getChildAt(i);
if(chk.isChecked()){hobbys+=chk.getText();}
}
AutoCompleteTextView //输入2字符提示
String[] list=new String[]{"11112","11113","1114","11115"};
ArrayAdapter<String> ad=new ArrayAdapter<String>(this, android.R.layout.simple_dropdown_item_1line, list);
autoCompleteTextView1.setAdapter(ad);
Spinner & ListView
ArrayList<String> str=new ArrayList<String>();
str.add("1111");
str.add("1112"
str.add("1113");
ArrayAdapter<String> ad=new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item, str);
spinner1.setAdapter(ad);
list.setOnItemClickListener
public void onItemClick(AdapterView adapterView, View view,int arg2, long arg3)
arg2 是参数
ProgressBar& SeekBar & RatingBar
android:max="50"
android:progress="20"
android:secondaryProgress="30"
X.getMax()
X.setProgress((int)X.getProgress()+1);
RatingBar
style="?android:attr/ratingBarStyleSmall" 小星星样式
WebView
WebView.loadUrl();
Space
android:layout_width="match_parent"
android:layout_height="20dp"
include
<include android:layout_width="wrap_content"
android:layout_height="wrap_content"
layout="@layout/ui" />
ViewStub
<ViewStub android:id="@+id/viewStub1"
android:layout="@layout/ui" />
View view = viewStub1.inflate();
LinearLayout layout = (LinearLayout)view;
TextView t = (TextView)layout.findViewById(R.id.textView1);
t.setText("看到了么");
listView
项目单击事件
listView1.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
HashMap<String, String> asd=ll.get(arg2); //arg2 获取的索引值
Toast.makeText(getBaseContext(), "你选择了"+arg2+asd.get("title"), Toast.LENGTH_LONG).show();
}
});
---------------------------------------------------------------------------
new OnScrollListener() {
boolean isLastRow = false;
@Override
public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
//滚动时一直回调,直到停止滚动时才停止回调。单击时回调一次。
//firstVisibleItem:当前能看见的第一个列表项ID(从0开始)
//visibleItemCount:当前能看见的列表项个数(小半个也算)
//totalItemCount:列表项共数
//判断是否滚到最后一行
if (firstVisibleItem + visibleItemCount == totalItemCount && totalItemCount > 0) {
isLastRow = true;
}
}
@Override
public void onScrollStateChanged(AbsListView view, int scrollState) {
//正在滚动时回调,回调2-3次,手指没抛则回调2次。scrollState = 2的这次不回调
//回调顺序如下
//第1次:scrollState = SCROLL_STATE_TOUCH_SCROLL(1) 正在滚动
//第2次:scrollState = SCROLL_STATE_FLING(2) 手指做了抛的动作(手指离开屏幕前,用力滑了一下)
//第3次:scrollState = SCROLL_STATE_IDLE(0) 停止滚动
//当滚到最后一行且停止滚动时,执行加载
if (isLastRow && scrollState == AbsListView.OnScrollListener.SCROLL_STATE_IDLE) {
//加载元素
......
isLastRow = false;
}
}
}