以下为GrideView例子:
/** * 我的 - 认证信息 * Created by dwen on 2018/4/4. */ public class MyRenzhengActivity extends BaseActivity { private List<RenZhengBean> renZhengBeans = new ArrayList<>(); private GridView gridView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_my_renzheng); gridView = (GridView)findViewById(R.id.my_renzheng_gridV); initUI(); initRenZhengList(); actionAdapter(); } /** * 初始化UI */ private void initUI(){ TextView textView = (TextView) this.findViewById(R.id.top_title2); textView.setText("认证信息"); ImageView imageView = (ImageView)this.findViewById(R.id.jiantouImg2); imageView.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { finish(); } }); } private void initRenZhengList(){ RenZhengBean bean = new RenZhengBean(); //TODO 判断是否认证 bean.setImgTag(R.mipmap.no_shiming); bean.setName("实名认证"); bean.setDesc("个人信息审核认证"); bean.setType(RenzhengType.SHIMING.key); renZhengBeans.add(bean); RenZhengBean bean2 = new RenZhengBean(); //TODO 判断是否认证 bean2.setImgTag(R.mipmap.yes_qiye); bean2.setName("企业认证"); bean2.setDesc("企业资质审核认证"); bean2.setType(RenzhengType.QIYE.key); renZhengBeans.add(bean2); RenZhengBean bean3 = new RenZhengBean(); //TODO 判断是否认证 bean3.setImgTag(R.mipmap.yes_dangbao); bean3.setName("担保认证"); bean3.setDesc("担保交易认证"); bean3.setType(RenzhengType.DANGBAO.key); renZhengBeans.add(bean3); } /** * Adapter */ private void actionAdapter(){ MyRenzhengAdapter adapter = new MyRenzhengAdapter(renZhengBeans,MyRenzhengActivity.this); gridView.setAdapter(adapter); } }
/** * 我的认证 * Created by dwen on 2018/4/4. */ public class MyRenzhengAdapter extends BaseAdapter { private List<RenZhengBean> list = new ArrayList<>(); Context context; public MyRenzhengAdapter(List<RenZhengBean> list, Context context) { this.list = list; this.context = context; } @Override public int getCount() { return this.list.size(); } @Override public Object getItem(int position) { return this.list.get(position); } @Override public long getItemId(int position) { return position; } @Override public View getView(int position, View convertView, ViewGroup parent) { final ViewHolder holder; final RenZhengBean bean = this.list.get(position); if (null == convertView){ convertView = LayoutInflater.from(context).inflate(R.layout.item_my_renzheng,null); holder = new ViewHolder(convertView); holder.img = convertView.findViewById(R.id.item_renzheng_img); holder.txtName = convertView.findViewById(R.id.item_renzheng_txt); holder.txtDesc = convertView.findViewById(R.id.item_renzheng_txt2); holder.linearLayout = convertView.findViewById(R.id.my_renzheng_linear); holder.linearLayout.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if (bean.getType().equals(RenzhengType.DANGBAO.key)){ MmtUtils.SwitchActivity(context, MyDangbaoActivity.class,null); }else if(bean.getType().equals(RenzhengType.QIYE)){ }else if (bean.getType().equals(RenzhengType.SHIMING)){ } } }); //set value holder.img.setImageResource(bean.getImgTag()); holder.txtName.setText(bean.getName()); holder.txtDesc.setText(bean.getDesc()); convertView.setTag(holder); }else{ //直接通过holder获取子控件,不必使用findviewbyid,加快了 UI 的响应速度 Log.i("bean.getName()--",bean.getName()); holder = (ViewHolder)convertView.getTag(); holder.img.setImageResource(bean.getImgTag()); holder.txtName.setText(bean.getName()); holder.txtDesc.setText(bean.getDesc()); } return convertView; } /** * ViewHolder save view and speed UI */ static class ViewHolder{ ImageView img; TextView txtName,txtDesc; LinearLayout linearLayout; public ViewHolder() { } public ViewHolder(View view) { } } }
<?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:orientation="vertical" android:background="@color/white"> <include layout="@layout/title2"></include> <GridView android:id="@+id/my_renzheng_gridV" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_marginTop="15dp" android:columnWidth="153dp" android:stretchMode="spacingWidthUniform" android:verticalSpacing="15dp" android:numColumns="2"> </GridView> </LinearLayout>
<?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:gravity="center" android:orientation="vertical"> <LinearLayout android:id="@+id/my_renzheng_linear" android:layout_width="153dp" android:layout_height="170dp" android:orientation="vertical" android:background="@drawable/shape_corner4"> <ImageView android:id="@+id/item_renzheng_img" android:layout_width="43dp" android:layout_height="50dp" android:src="@mipmap/no_dangbao" android:layout_gravity="center" android:layout_marginTop="25dp"/> <TextView android:id="@+id/item_renzheng_txt" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="15dp" android:textColor="@color/text_color" android:text="实名认证" android:layout_gravity="center" android:layout_marginTop="15dp"/> <TextView android:id="@+id/item_renzheng_txt2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="13dp" android:textColor="@color/default_bt_tx_color" android:text="个人信息审核认证" android:layout_gravity="center" android:layout_marginTop="15dp"/> </LinearLayout> </LinearLayout>
相关推荐
在这个"Android GridView使用例子"中,我们将深入探讨如何有效地利用GridView来构建动态且交互性强的用户界面。 1. **GridView的基本概念** GridView继承自AbsListView,它可以显示一列或多列水平对齐的项目。每个...
注意,这个例子中的数据获取是异步进行的,以防止阻塞UI线程。在实际项目中,你可能还需要考虑错误处理、数据缓存等细节。同时,优化`getView()`方法的性能也很重要,比如使用convertView来复用视图,避免不必要的...
本示例"android的GridView底部加载更多例子"探讨了如何在GridView中实现无限滚动加载功能,即用户无需点击加载更多按钮,只需上拉屏幕,内容就会自动加载。这种特性极大地提升了用户体验,尤其是在处理大量数据时。 ...
在Android开发中,GridView是一种非常常见的布局控件,它允许我们以网格的形式展示数据,通常用于创建类似照片墙、菜单选项或图标排列等界面。在本教程中,我们将深入探讨如何实现一个基本的GridView视图,并通过...
在Android开发中,ListView和GridView是两种非常常用的控件,它们用于展示大量数据,并且具有良好的滚动性能。这两个组件在用户界面设计中扮演着至关重要的角色,尤其在展示列表或网格形式的数据时。本篇文章将深入...
在这个小例子中,我们将可能使用到BaseAdapter,因为它允许我们自定义视图和数据的绑定方式,灵活性更高。 第一种添加数据的方法是通过继承BaseAdapter来实现。你需要重写其中的几个关键方法,如`getCount()`返回...
最近看到联想,摩托罗拉等,手机launcher中有个效果,进入mainmenu后,里面的应用程序的图标可以拖来拖去,所以我也参照网上给的代码,写了一个例子。还是很有趣的,实现的流畅度没有人家的那么好,我只是模仿这种...
在这个例子中,我们可能会创建一个自定义的`GridViewAdapter`,并重写`getView()`方法来定制每个单元格的视图。同时,别忘了在`GridView`中设置适配器: ```java GridView gridView = findViewById(R.id.grid_view)...
在这个例子中,我们设置了GridView的列数为1,使其在HorizontalScrollView内以单行显示。 为了让用户选中某项后,再次打开应用时能直接定位到该选中项,我们需要保存用户的选中状态。这可以通过SharedPreferences...
在这个"gridview添加删除例子"中,我们将深入探讨如何动态地在GridView中添加和删除数据。 首先,GridView的添加功能通常涉及到后台数据源的管理。在ASP.NET中,可以使用诸如SqlDataSource或EntityDataSource这样的...
android GridView实现支付宝拖动例子
在“机锋市场”的例子中,可能每个单元格展示一个应用图标、名称和简短描述。 接下来是ViewFlipper,它是Android中的一个动画容器,它可以显示并切换多个子视图。ViewFlipper常用于实现翻页效果,比如滑动浏览图片...
这个例子就是关于如何在Android的GridView中实现这些高级功能。 首先,让我们详细了解一下GridView的基本概念。GridView继承自AbsListView,它会将数据集(通常来自Adapter)渲染成一个二维的、可滚动的视图。每个...
在Android开发中,GridView是一种非常常见的布局控件,它能够以网格的形式展示数据,通常用于创建类似相册、菜单或图标列表等界面。本篇博客源码深入探讨了如何在Android应用中有效地使用GridView,包括如何显示Grid...
ListView和GridView里加载图片,有很多种实现方式,但是如果用不好很容易导致各种问题,比如内存溢出、图片错位、体验效果差等问题。 现在我将开源项目GreenDroid里异步加载图片代码提取出来做成一个jar包。有效...
在Android开发中,GridView是一种非常常见的布局控件,它允许我们以网格的形式展示数据,通常用于...在提供的Android例子源码仿Launcher的GridView拖动中,你可以找到完整的实现示例,进一步学习和理解这一功能的细节。
在这个例子中,“andriod gridview例子”是一个可以直接导入并运行的Android工程,旨在帮助开发者理解如何在实际项目中使用GridView。 GridView的基本用法: 1. **布局定义**:在XML布局文件中,你需要添加一个`...
在这个例子中,设置为"columnWidth"意味着当数据填充不满一列时,列宽会自动扩展以填充剩余空间。 4. `android:verticalSpacing="10dp"` 和 `android:horizontalSpacing="10dp"`:分别设置行间和列间的间距,10dp...
在这个例子中,每个单元格包含一个`ImageView`和一个`TextView`。`ImageView`用于显示图片,`TextView`则用于显示文本信息。`RelativeLayout`作为容器,允许图像和文本居中对齐。 最后,Java源代码部分通常涉及到`...