4.乐学成语----------显示学习列表
来源:互联网 发布:网络直播泡沫 编辑:程序博客网 时间:2024/04/30 09:15
1.在entity包下新建类Cateegory,代码如下:
public class Category { private String name;//类别名称 private int imageId;//类别对应的图片 public Category(String name,int imageId){ super(); this.name=name; this.imageId=imageId; } public String getName(){ return name; } public int getImageId(){return imageId; }}2.在layout类中新建activity_study.xml文件,主要添加了一个ListView控件,代码如下:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" android:background="@drawable/bg_ling" tools:context=".StudyActivity"> <ListView android:id="@+id/lvCategories" android:layout_width="match_parent" android:layout_height="wrap_content" android:listSelector="#00000000" android:layoutAnimation="@anim/anim_layout_listview" android:layout_alignParentLeft="true" android:layout_alignParentTop="true"> </ListView></RelativeLayout>3.在layout目录下新建category_item.xml,代码如下:
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:padding="10dp" android:orientation="horizontal" > <ImageView android:id="@+id/category_image" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/category_animal"/> <TextView android:id="@+id/category_name" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="animal" android:gravity="center" android:textAppearance="?android:attr/textAppearanceLarge"/></LinearLayout>4.新建类CategoryAdapter,代码如下:
public class CategoryAdapter extends ArrayAdapter<Category>{ private int resourceld;public CategoryAdapter(Context context, int resource,List<Category> objects) {super(context, resource, objects);// TODO Auto-generated constructor stub resourceld=resource;} /* * 我们可以在getView()中进行判断,如果convertView为空,则使用LayoutInflater * 去加载布局,如果不为空则直接对convertView进行重用。 */public View getView(int position,View convertView,ViewGroup parent){Category category=getItem(position);//获取当前项的Category实例 View view; ViewHolder viewHolder; if(convertView==null){ view = LayoutInflater.from(getContext()).inflate(resourceld,null); viewHolder = new ViewHolder(); viewHolder.categoryImage=(ImageView)view.findViewById(R.id.category_image); viewHolder.categoryName=(TextView)view.findViewById(R.id.category_name); view.setTag(viewHolder); }else{ view=convertView; viewHolder=(ViewHolder)view.getTag();//重新获取ViewHolder } viewHolder.categoryImage.setImageResource(category.getImageId()); viewHolder.categoryName.setText(category.getName()); return view;} class ViewHolder{ ImageView categoryImage; TextView categoryName; }/*ImageView categoryImage=(ImageView)view.findViewById(R.id.category_image);TextView categoryName=(TextView)view.findViewById(R.id.category_name);categoryImage.setImageResource(category.getImageId());categoryName.setText(category.getName());return view;*/}5.在activity包下新建StudyActivity继承自Activity,代码如下:
public class CategoryAdapter extends ArrayAdapter<Category>{ private int resourceld;public CategoryAdapter(Context context, int resource,List<Category> objects) {super(context, resource, objects);// TODO Auto-generated constructor stub resourceld=resource;} /* * 我们可以在getView()中进行判断,如果convertView为空,则使用LayoutInflater * 去加载布局,如果不为空则直接对convertView进行重用。 */public View getView(int position,View convertView,ViewGroup parent){Category category=getItem(position);//获取当前项的Category实例 View view; ViewHolder viewHolder; if(convertView==null){ view = LayoutInflater.from(getContext()).inflate(resourceld,null); viewHolder = new ViewHolder(); viewHolder.categoryImage=(ImageView)view.findViewById(R.id.category_image); viewHolder.categoryName=(TextView)view.findViewById(R.id.category_name); view.setTag(viewHolder); }else{ view=convertView; viewHolder=(ViewHolder)view.getTag();//重新获取ViewHolder } viewHolder.categoryImage.setImageResource(category.getImageId()); viewHolder.categoryName.setText(category.getName()); return view;} class ViewHolder{ ImageView categoryImage; TextView categoryName; }/*ImageView categoryImage=(ImageView)view.findViewById(R.id.category_image);TextView categoryName=(TextView)view.findViewById(R.id.category_name);categoryImage.setImageResource(category.getImageId());categoryName.setText(category.getName());return view;*/}结果图如下:
0 0
- 4.乐学成语----------显示学习列表
- 乐学成语(成语分类列表显示)
- 乐学成语——显示学习列表
- 乐学成语——显示学习列表
- 5.乐学成语-----------显示动物类成语列表
- 乐学成语实现之三:显示学习列表(注意ListView的细节优化)
- 个人完成案例之乐学成语(显示学习列表和连接主界面)
- 乐学成语——显示所有动物类成语的列表
- 乐学成语——显示所有动物类成语的列表
- 乐学成语实现之四:显示所有动物类成语的列表
- 综合项目之乐学成语(显示所有动物类成语的列表)
- 乐学成语——显示每个成语的详细信息
- 6.乐学成语----------显示每条成语的详细信息
- 个人完成案例之乐学成语(显示所有动物类成语的列表和每条成语的详细信息)
- 3.乐学成语----------显示主界面
- 乐学成语
- 乐学成语
- 乐学成语
- Python升级导致的yum错误
- 先来先服务调度算法的简单模拟
- 131. Palindrome Partitioning
- vecter<int>::size_type作为判断条件出错
- 如何解决“System.Data.OracleClient 需要 Oracle 客户端软件 8.1.7 或更高版本”的错误?
- 4.乐学成语----------显示学习列表
- 视差贴图(parallax mapping)学习笔记
- db2数据库存储过程---简单的增删改查
- hadoop实践(三)hadoop 集群配置
- 算法导论第十二章-二叉搜索树-Cpp代码实现
- 在Oracle如何按照月份查询数据?
- 可扩展的listview
- 字符串匹配算法
- SICP 联系2.28 实现fringe