概述
1.UI的定义
View.OnClickListener: onClick()
View.OnLongClickListener: onLongClick()
View.OnTouchListener: onTouch()
View.OnCreateContextMenuListener: onCreateContextMenu()
View.OnFocusChangeListener: onFocusChange()
View.OnKeyListener: onKey()
view.seton…Listener(listener)
<TextView android:id="@+id/tv_simple_message" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="这是TextView的内容" android:background="#999999" android:textColor="#ff0000" android:textSize="20sp"/>
tv_simple_message = (TextView) findViewById(R.id.tv_simple_message); tv_simple_message.setText("何方勇");
<EditText android:id="@+id/et_simple_number" android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="请输入手机号" android:inputType="phone"> </EditText>
et_simple_number = (EditText) findViewById(R.id.et_simple_number);
<Button android:id="@+id/btn_simple_submit" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="提交" />
btn_simple_submit = (Button) findViewById(R.id.btn_simple_submit); btn_simple_submit.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { //得到内容 String number = et_simple_number.getText().toString(); //提示 Toast.makeText(SimpleComponentActivity.this, number, 0).show(); } });
<ImageView android:id="@+id/iv_simple_icon" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@android:drawable/alert_dark_frame" android:src="@android:drawable/ic_media_play"/>
iv_simple_icon = (ImageView) findViewById(R.id.iv_simple_icon); iv_simple_icon.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { //设置背景图片 iv_simple_icon.setBackgroundResource(android.R.drawable.alert_light_frame); //设置前景图片 iv_simple_icon.setImageResource(android.R.drawable.ic_media_pause); } });
<LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="爱好: " /> <CheckBox android:id="@+id/cb_simple_basket" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="篮球" /> <CheckBox android:id="@+id/cb_simple_foot" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="足球" /> <CheckBox android:id="@+id/cb_simple_pingpang" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="乒乓" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="确定" android:onClick="confirm"/> </LinearLayout>
cb_simple_basket = (CheckBox) findViewById(R.id.cb_simple_basket); cb_simple_foot = (CheckBox) findViewById(R.id.cb_simple_foot); cb_simple_pingpang = (CheckBox) findViewById(R.id.cb_simple_pingpang); //给cb_simple_foot设置选中状态改变的监听 cb_simple_foot.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { if(isChecked) { Toast.makeText(SimpleComponentActivity.this, "选中了足球", 0).show(); } else { Toast.makeText(SimpleComponentActivity.this, "未选中足球", 0).show(); } } });
<RadioGroup
android:id="@+id/rg_simple_sex"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal">
<RadioButton
android:id="@+id/rb_simple_male"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="男" />
<RadioButton
android:id="@+id/rb_simple_female"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="女"
android:checked="true"/>
</RadioGroup>
rg_simple_sex = (RadioGroup) findViewById(R.id.rg_simple_sex);
rg_simple_sex.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {//checkedId 选中的radioButton的id
//找到选中的radioButton
RadioButton radioButton = (RadioButton) findViewById(checkedId);
//得到文本
String sex = radioButton.getText().toString();
//提示
Toast.makeText(SimpleComponentActivity.this, sex, 0).show();
}
});
MenuInflater menuInflater = getMenuInflater();
menuInflater.inflate(R.menu.main_option, menu);
View : setOnCreateContextMenuListener(listener)
为某个视图添加创建ContextMenu的监听(需要长按触发)
Activity : onCreateContextMenu(menu, view, menuInfo)
显示菜单的回调方法
Activity : onContextItemSelected(MenuItem item)
当选择某个菜单项的回调方法
<Button
android:id="@+id/btn_test2_show_cm"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="显示ContextMenu" />
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="1. 点击menu显示选项菜单n2. 长按按钮显示上下文菜单"
android:textSize="25dp" />
<ProgressBar //默认为圆形进度条
android:id="@+id/pb_test3_loading1"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<ProgressBar
android:id="@+id/pb_test3_loading2"
style=“?android:attr/progressBarStyleHorizontal“ //水平进度条
android:layout_width="match_parent“
android:layout_height="wrap_content"
android:progress=“2“ //当前进度,默认为0
android:max=“10”/> // 最大进度, 默认为100
void setProgress(int Progress) :设置当前进度
intgetProgress() : 得到当前进度
void setMax(int max) : 设置最大进度
intgetMax() : 设置或得到最大进度
void setVisibility(intvisibility) : 设置视图的可见性
View. VISIBLE : 标识可见
View. INVISIBLE : 标识不可见, 但占屏幕空间
View.GONE : 标识不可见, 也不占屏幕空间
<SeekBar
android:id="@+id/sb_test3_prgress"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
SeekBar:
setOnSeekBarChangeListener(OnSeekBarChangeListener l) : 设置改变的监听
OnSeekBarChangeListener:
onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) : 进度改变
onStartTrackingTouch(SeekBar seekBar) : 按下滑杆
onStopTrackingTouch(SeekBar seekBar) : 从滑杆离开
12.Dialog(对话框)
AlertDialog(警告框) :
show() : 显示警告框
没有公开的构造方法, 只能通过其内部类Builder来创建
AlertDialog.Builder:
create() : 创建AlertDialog对象
show() : 创建AlertDialog对象, 同时将其显示出来
setTitle(CharSequence title): 设置标题
setMessage(CharSequence message) : 设置内容
setPositiveButton(String text, OnClickListener listener) : 设置正面按钮
setNegativeButton(String text, OnClickListener listener): 设置负面按钮
dismiss(): 移除dialog
setSingleChoiceItems(….)设置单选项列表
自定义对话框:
DialogBuilder :
setView(Viewview) : 设置Dialog中的视图
View:
View inflate(Context context, int resource, ViewGroup root) : 动态加载布局得到View
带进度条的对话框:
ProgressDialog :
staticshow(Context context, CharSequence title,CharSequence message) : 显示dialog
ProgressDialog(Context context) : 构造方法
setProgressStyle(int style) 设置样式
ProgressDialog.STYLE_HORIZONTAL :水平进度条样式
DateDialog(日期对话框):
public DatePickerDialog(Context context,
OnDateSetListener callBack, //点击确定的回调监听
int year, //显示年份
int monthOfYear, // 显示月分
int dayOfMonth) // 显示日
TimeDialog(时间对话框):
public TimePickerDialog (Contextcontext,
OnTimeSetListener callBack, //点击确定的回调监听
int hourOfDay, //几点
int minute, // 几分
boolean is24HourView) // 是否是24小时制
菜单Component
菜单Component
最后
以上就是欣喜小蚂蚁为你收集整理的Android核心技术之(3)上---系统组件component的全部内容,希望文章能够帮你解决Android核心技术之(3)上---系统组件component所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复