Android 第二章
来源:互联网 发布:阿里云ecs sn型号 编辑:程序博客网 时间:2024/05/19 03:22
五大布局
RelativeLayout 相对布局
一些常用属性
LinearLayout 线性布局
一些常用属性
FrameLayout 帧(框架)布局
会根据layout文件中的层次关系显示,比如layout中 元素Button在元素TextView之前,那么显示的时候Button就在最底层,TextView在Button之上
AbsoluteLayout 绝对布局
不推荐使用,除非只在一种机型上运行的app,否则视图不忍直视
TableLayout 表格布局
很少用到,类似于表格,可以设置列数
ListView
首先为了使用ListView需要有一个适配器(这里新建了一个类,继承自BaseAdapter.也可以使用匿名内部类)
public class ListViewAdapter extends BaseAdapter { //此实例用于读取layout配置文件 private LayoutInflater layoutInflater = null; //一个用于显示的数组 private String[] buttons = {"去评价", "功能介绍", "系统通知", "帮助与反馈", "检查新版本"}; //构造函数,需要一个Context类型的参数 public ListViewAdapter(Context context) { //为layoutInflater赋值 layoutInflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); } //返回ListView中要展示内容的总数 @Override public int getCount() { return buttons.length; } //返回每一项 @Override public Object getItem(int i) { return buttons[i]; } //为每一项设置一个ID @Override public long getItemId(int i) { return i; } //返回每一项的视图 @Override public View getView(int i, View view, ViewGroup viewGroup) { if (view == null) { //通过layoutInflater加载已存在的layout布局文件 //注意是R.layout.XXX 而不是 R.id.XXX view = layoutInflater.inflate(R.layout.layout_list_view, null); } //获取控件,并赋值 TextView lblName = (TextView) view.findViewById(R.id.lblName); lblName.setText(buttons[i]); return view; } }
适配器定义好之后,就是使用了,代码如下:
public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.activity_main); //获取ListView,前提是在布局文件中已经定义好一个ListView ListView listView = (ListView) findViewById(R.id.listView); //设置ListView的适配器 listView.setAdapter(new ListViewAdapter(MainActivity.this)); } }
布局的优化
布局的优化主要通过以下几个方法
0 0
- Android第二章
- Android第二章(2)
- Android第二章(3)
- Android 第二章
- 第二章:Android开发基础
- 初学android第一章、第二章
- 《Android群英传》第一章~第二章
- Android群英传 第二章-ADB
- Android 内存优化 第二章
- 《Android编程权威指南》第二版 第二章 挑战练习
- 第二章 Android内核和驱动程序(转)
- 第二章 Android内核和驱动程序(转)
- 第二章:Android,Getting Start(一)
- 第二章:Android,Getting start(二)
- jQuery Mobile设计Android通讯录(第二章)
- Android编程宝典-第二章-Activity
- Android开发艺术鉴赏第二章 IPC
- Android开发艺术-第二章 IPC 机制
- Docker学习总结(11)——八个Docker的真实应用场景
- 直观上理解PCA中特征值和特征向量
- oj4976 硬币
- leetcode No55. Jump Game
- linux source 解析
- Android 第二章
- impossible的真正含义
- Android webview上传图片(适配3.0,4.0,5.0,6.0)
- HDU 5773 The All-purpose Zero 第四场多校赛 LIS变形(最长上升子序列)
- Python 函数作用域
- JAVA输入输出流
- Hadoop:HDFS的健壮性设计
- jQuery—常规选择器
- Java基础学习总结(44)——10个Java 8 Lambda表达式经典示例