package cn.hwttnet.com.ui; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import cn.hwttnet.com.adapter.GridAdapter; import cn.hwttnet.com.bean.GridInfo; import android.app.Activity; import android.content.Context; import android.content.Intent; import android.content.DialogInterface.OnClickListener; import android.os.Bundle; import android.view.View; import android.view.Window; import android.widget.AdapterView; import android.widget.AdapterView.OnItemClickListener; import android.widget.GridView; public class MainActivity extends Activity { private GridView gridview; private GridAdapter adapter; Context context = MainActivity.this; Class<?> mActivities[] = { RegistrationActivity.class, AnnouncementActivity.class, WorkflowActivity.class ,WorkLogActivity.class, }; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.main); } void init() { gridview = (GridView) findViewById(R.id.gridview); adapter = new GridAdapter(getList(), context); gridview.setAdapter(adapter); gridview.setOnItemClickListener(new OnItemClickListener() { public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) { // TODO Auto-generated method stub onListItemClick(arg2); } }); } void onListItemClick(int index) { if (index < 0 || index >= mActivities.length) return; Intent intent = new Intent(context, mActivities[index]); this.startActivity(intent); } protected void onStart() { super.onStart(); init(); } protected void onResume() { super.onResume(); } ArrayList<GridInfo> getList() { ArrayList<GridInfo> list = new ArrayList<GridInfo>(); GridInfo gif1 = new GridInfo(); gif1.setImages(R.drawable.ic_launcher); gif1.setName("上班签到"); GridInfo gif2 = new GridInfo(); gif2.setImages(R.drawable.ic_launcher); gif2.setName("通知公告"); GridInfo gif3 = new GridInfo(); gif3.setImages(R.drawable.ic_launcher); gif3.setName("工作流"); GridInfo gif4 = new GridInfo(); gif4.setImages(R.drawable.ic_launcher); gif4.setName("工作日志"); list.add(gif1); list.add(gif2); list.add(gif3); list.add(gif4); return list; } }
package cn.hwttnet.com.adapter; import java.util.ArrayList; import java.util.List; import android.content.Context; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.BaseAdapter; import android.widget.ImageView; import android.widget.TextView; import cn.hwttnet.com.bean.GridInfo; import cn.hwttnet.com.ui.R; public class GridAdapter extends BaseAdapter { ArrayList<GridInfo> list; Context context; public GridAdapter(ArrayList<GridInfo> list,Context context) { this.list=list; this.context=context; } public int getCount() { // TODO Auto-generated method stub return list.size(); } public Object getItem(int position) { // TODO Auto-generated method stub return list.get(position); } public long getItemId(int position) { // TODO Auto-generated method stub return position; } public View getView(int position, View convertView, ViewGroup parent) { // TODO Auto-generated method stub if(convertView==null) { LayoutInflater layout=LayoutInflater.from(context); convertView=layout.inflate(R.layout.grid_item, null); } ImageView itemImg=(ImageView)convertView.findViewById(R.id.itemImage); TextView itemName=(TextView)convertView.findViewById(R.id.itemText); itemImg.setImageResource(list.get(position).getImages()); itemName.setText(list.get(position).getName()); return convertView; } }
package cn.hwttnet.com.bean; public class GridInfo { String name; int images; public String getName() { return name; } public void setName(String name) { this.name = name; } public int getImages() { return images; } public void setImages(int images) { this.images = images; } }
相关推荐
Adapter负责数据的绑定和提供视图,ViewHolder是为了提高性能而缓存的视图容器,LayoutManager则决定了视图的布局方式,如线性布局、网格布局等。 要实现item的点击效果,我们通常需要做以下几步: 1. **创建...
在Android开发中,RecyclerView是一个非常重要的组件,它用于展示可滚动的列表...通过以上步骤,我们就能在RecyclerView中实现点击事件的监听和处理。理解并熟练掌握这些知识点,将有助于提升Android应用的用户体验。
学生通过创建计算器布局和联系人视图,实践了线性布局、相对布局、帧布局、绝对布局和表格布局等五大布局的使用,并深入学习了列表视图和网格视图的显示方式,以及适配器在视图中的应用。本实验不仅要求学生理解布局...
通过以上步骤,你可以实现点击GridView中的任意一行数据,跳转到新闻详细页的功能。在实际开发中,根据具体需求,可能还需要处理其他细节,如错误处理、缓存机制、动画效果等。不断学习和实践,能够让你更好地掌握...
- 在ViewHolder中添加点击事件监听,处理用户交互,如商品详情跳转、收藏、加入购物车等。 10. **响应式布局** - 结合ConstraintLayout、PercentLayout或FlexboxLayout等工具,实现不同屏幕尺寸下的自适应布局。 ...
这样,Activity或Fragment就可以根据回调处理点击事件,比如跳转到联系人详情页面。 通过这个项目,开发者可以学习到如何在Android应用中使用RecyclerView来展示动态数据,同时了解如何实现基本的搜索功能和点击...
1-绘制布局,掌握android基本view控件的属性和使用 2-熟练掌握Activity页面展示,跳转和传值 3-使用碎片加载界面,滑动视图切换页面 4-自定义对话框 5-自定义软键盘绘制和使用 6-列表视图以及网格视图的适配器使用...
在Android开发中,Adapter是连接数据源与UI组件的关键角色,尤其在显示列表或网格视图等场景下。本示例关注的是如何在Adapter中利用`startActivityForResult()`方法启动一个新Activity,并在原Activity中通过`...
当用户点击某个单元格时,可以通过设置OnItemClickListener监听事件来捕获点击事件,然后使用`startActivity()`或`startActivityForResult()`方法启动新的Activity,以实现功能页面的跳转。 此外,为了提高用户体验...
本示例将深入讲解如何在RecyclerView中实现点击事件的处理。 【描述】"示例演示了基本的RecyclerView设置以及如何添加点击监听" 在Android应用中,当用户与界面交互时,点击事件的处理至关重要。对于RecyclerView...
本篇文章将详细探讨如何在GridView中实现点击item后跳转到不同的GridView。 ### GridView的基本使用 1. **布局文件配置** 在XML布局文件中,我们需要定义一个GridView,通过`android:numColumns`属性设置列数,`...
Activity间的跳转可以通过Intent实现,Intent不仅能够启动Activity,还能启动服务或发送广播。同时,Activity还支持透明背景、主题设置以及导航栏自定义等高级特性,使应用的UI设计更加丰富多彩。 最后,我们提及...
通过以上改造,用户在浏览瀑布流图片时,不仅可以欣赏到层次分明的视觉效果,还能通过点击直接触发相应的行为,如查看大图、跳转详情页等,从而提升应用的互动性和实用性。在实际开发中,开发者可以根据项目需求选择...
实现点击事件通常有两种方式:一是通过设置OnClickListener在ViewHolder内部,二是通过在Adapter中实现一个接口,让Activity或Fragment来监听点击事件。当用户点击列表项时,会触发相应的回调方法,从而执行相应的...
在标签"gridview"提及的网格视图(GridView),通常用于展示多行多列的数据,如图片库或菜单。尽管这个例子中没有直接涉及GridView,但你可以将渐变效果应用到GridView的每个单元格上,以创建更复杂的动态界面。 ...
使用Intent对象来实现Activity间的跳转,通过`setClass()`指定目标Activity,并用`startActivity()`启动。 【事件处理】 1. **系统事件**:如`onKeyDown()`用于处理按键事件。 2. **控件事件**:如`OnClickListener...
在Android开发中,GridView是一种非常常用的布局控件,它能够以网格的形式展示数据,非常适合用来实现九宫格菜单。九宫格菜单通常用于应用程序的主界面,显示一系列图标和文字,用户点击图标即可进入相应的功能模块...
在这个主题中,我们将深入探讨如何实现`RecycleView`,包括创建列表、网格布局以及瀑布流效果。 首先,我们要理解`RecycleView`的基本工作原理。它通过复用已显示过的视图项来提高性能,当用户滚动时,不再显示的...
- GridLayout:网格布局,将视图均匀分布在一个网格中。 6. **常用包结构**: - `android.app` 包含Activity、Service等高层组件。 - `android.content` 提供ContentProvider、Intent等数据交换机制。 - `...
- 在"gridGalleryDemo"中,GridView可能被用来显示图片的缩略图,用户点击后会跳转到详细的图片展示。 2. Gallery: - Gallery是另一种可滚动的视图,它沿水平轴线展示子视图,常用于轮播图片或选择器场景。 - ...