赞
踩
关于布局
利用Html生成,空间是界面组成的主要元素,是与用户尽相直接交互的
2.3.3 Button
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-o0qJVBaD-1616465270913)(https://cdn.nlark.com/yuque/0/2021/png/2196885/1615856789198-eb754688-c820-48b2-98b2-9984e6e9afac.png)]
4种实现方式–点击事件实现
设置监听事件
radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
if (checkedId == R.id.rbtn) {
textView.setText("您的性别是:男");
} else {
textView.setText("您的性别是:女");
}
}
});
<!--设置背景图片-->
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/bg" />
<!--设置背景图片-->
<ImageView
android:layout_width="100dp"
android:layout_height="100dp"
android:src="@android:drawable/sym_def_app_icon"/>
2.3.6 实战演练——QQ登录界面
对话框也是程序与用户交互的一种方式,通常用于显示当前程序提示信息以及相关说明,以小窗口形式展现。 常见对话框有以下几种:
普通对话框(Dialog)一般只会显示提示信息,并具有确定和取消按钮。
单选对话框和RadioButton作用类似,只能选择一个选项,它是通过AlertDialog对象调用setSingleChoiceItems()方法创建的。
多选对话框通常在需要勾选多种选项时使用,例如添加兴趣爱好、喜爱的电影等。创建多选对话框与创建单选对话框类似,调用setMultiChoiceItems()方法就可实现。
进度条对话框一般在应用程序实现耗时操作时使用。Android中提供了两种进度条样式,圆形进度条和水平进度条。
消息对话框(Toast)是轻量级信息提醒机制,显示在应用程序界面的最上层,一段时间后自动消失不会打断当前操作,也不获得焦点。
为了提高用户体验,达到更理想的效果,可根据需求自定义对话框样式。具体创建步骤如下:
1. 创建布局
创建一个自定义对话框的布局文件(my_dialog.xml),布局中需要设定对话框的标题、对话框内容以及确定和取消按钮。
2. 创建自定义对话框
创建一个类MyDialog继承自Dialog类,主要用于初始化自定义对话框中的控件以及响应按钮的点击事件。
3. 使用自定义对话框
在MainActivity中,调用MyDialog的构造方法将自定义对话框显示出来
package cn.itcast.androiddialog; import android.app.ProgressDialog; import android.content.DialogInterface; import android.support.v7.app.AlertDialog; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.widget.Toast; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //普通对话框 // AlertDialog dialog; //声明对象 // dialog = new AlertDialog.Builder(this) //绑定当前界面窗口 // .setTitle("Dialog对话框") //设置标题 // .setMessage("是否确定退出?") //设置提示信息 // .setIcon(R.mipmap.ic_launcher) //设置图标 // .setPositiveButton("确定", null) //添加“确定”按钮 // .setNegativeButton("取消", null) //添加“取消”按钮 // .create(); //创建对话框 // dialog.show(); //显示对话框 //单选对话框 // new AlertDialog.Builder(this) //生成对话框 // .setTitle("请选择性别") //设置标题 // .setIcon(R.mipmap.ic_launcher) //设置图标 // .setSingleChoiceItems(new String[]{"男", "女"}, 0, // new DialogInterface.OnClickListener() { // public void onClick(DialogInterface dialog, int which) { // } // } // ) // .setPositiveButton("确定", null) // .show(); //多选对话框 // new AlertDialog.Builder(this) // .setTitle("请添加兴趣爱好!") // .setIcon(R.mipmap.ic_launcher) // .setMultiChoiceItems(new String[]{"旅游", "美食", "汽车", "宠物"}, // null, null) // .setPositiveButton("确定", null) // .show(); //进度条对话框 // ProgressDialog prodialog; //声明对话框 // prodialog = new ProgressDialog(this); //构建对话框 // prodialog.setTitle("进度条对话框"); // prodialog.setIcon(R.mipmap.ic_launcher); // prodialog.setMessage("正在下载请等候..."); // prodialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL); //设置水平进度条 prodialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);//设置圆形进度条 // prodialog.show(); //创建Toast // Toast.makeText(MainActivity.this, "Hello,Toast", Toast.LENGTH_SHORT).show(); //自定义对话框 MyDialog myDialog = new MyDialog(this, "我是自定义的Dialog"); myDialog.show(); } }
样式(style)是包含一种或多种控件的属性集合,可以指定控件高度、宽度、字体大小及颜色等。
主题(theme)应用到整个Activity和Application的样式,当设置好主题后,Activity或整个程序中的视图都将使用主题中的属性,当主题和样式中的属性发生冲突时,样式的优先级要高于主题。 自定义主题代码如下(styles.xml):
国际化(internationalization)的应用具备支持多种语言功能,能被不同国家或地区用户同时访问,提供符合访问者阅读习惯的页面和数据。
由于国际化单词internationalization首字母“I”和尾字母“N”之间有18个字符,因此被简称为I18N。
(具体待展开)
2.7.1 单元测试
过滤显示
待解决:环境出现问题
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。