- 浏览: 199854 次
- 性别:
- 来自: 上海
文章分类
最新评论
GridView是一个类似于"表格化"的二位排版配置View,当GridView里的元素多到画面放不下时,就会出现scrolling的效果,一般在GridView里面的元素称为Item,要将文字作为Item放入GridView,就要借助ArrayAdapter对象。
另外GridView的setSelection方法我还是不怎么明白,望了解的朋友告知,谢谢。
另外GridView的setSelection方法我还是不怎么明白,望了解的朋友告知,谢谢。
package com.kevin.gridview; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.AdapterView; import android.widget.AdapterView.OnItemClickListener; import android.widget.ArrayAdapter; import android.widget.Button; import android.widget.GridView; import android.widget.ListAdapter; import android.widget.TextView; public class Main extends Activity { private Button button1,button2; private GridView gridView; private TextView tv_title; private String[] data1,data2; private ListAdapter adapter; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); data1 = new String[]{ "苹果", "香蕉", "桃子", "梨子" }; data2 = new String[]{ "苹果", "香蕉", "桃子", "梨子", "葡萄", "桔子", "柚子", "西瓜", "甘蔗" }; button1 = (Button)findViewById(R.id.button1); button2 = (Button)findViewById(R.id.button2); gridView = (GridView)findViewById(R.id.gridView1); tv_title = (TextView)findViewById(R.id.tv_title); button1.setOnClickListener(new ButtonClickedListener()); button2.setOnClickListener(new ButtonClickedListener()); gridView.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { // 判断Adapter离得元素个数,判断被单击的是第几个元素 switch (adapter.getCount()) { case 4: tv_title.setText(data1[position]); System.out.println((String)adapter.getItem(position)); break; case 9: tv_title.setText(data2[position]); System.out.println((String)adapter.getItem(position)); break; default: break; } } }); } class ButtonClickedListener implements OnClickListener{ @Override public void onClick(View v) { Button button = (Button)v; switch (button.getId()) { case R.id.button1: // 设置4个元素,以2列方式显示(2*2) gridView.setNumColumns(2); adapter = new ArrayAdapter<String>(Main.this, android.R.layout.simple_list_item_1,data1); gridView.setAdapter(adapter); //设置了没有效果。。。。 // gridView.setSelection(2); // gridView.setSelector(R.drawable.icon); // gridView.refreshDrawableState(); break; case R.id.button2: // 设置9个元素,以2列方式显示(3*3) gridView.setNumColumns(3); adapter = new ArrayAdapter<String>(Main.this, android.R.layout.simple_list_item_1,data2); gridView.setAdapter(adapter); break; default: break; } } } }
- GridViewDemo4.zip (45 KB)
- 下载次数: 18
评论
3 楼
pp_hdsny
2013-08-30
[color=orange][/color]
2 楼
pp_hdsny
2013-08-30
[align=center][size=x-large][img]
[/img][/size][/align]引用:roll: :wink: :arrow: :?: :P :P :twisted:
1 楼
7月yiyi
2012-01-31
我不知道你说的没有效果是什么意思,setselection(int index)是让焦点在index位置上,你在main.xml里图片设置焦点高亮,看看能不能看到效果。我试过是可以的。
可能你的item没有那么多,只在一个界面上。假如0-10张图片在第一页,11-20需要下滚才能看到,这个时候你设置下setselection(12),它就会滚到可以显示第12张图片的位置。
再不行,你就自己设置一个menu,利用下面那个方法看看setselection的效果。
public boolean onOptionsItemSelected(MenuItem item) {
// TODO Auto-generated method stub
switch( item.getItemId()){
case( R.id.menu1):
gridview.setSelection(0);
break;
case(R.id.menu2):
gridview.setSelection(10);
}
return super.onOptionsItemSelected(item);
}
可能你的item没有那么多,只在一个界面上。假如0-10张图片在第一页,11-20需要下滚才能看到,这个时候你设置下setselection(12),它就会滚到可以显示第12张图片的位置。
再不行,你就自己设置一个menu,利用下面那个方法看看setselection的效果。
public boolean onOptionsItemSelected(MenuItem item) {
// TODO Auto-generated method stub
switch( item.getItemId()){
case( R.id.menu1):
gridview.setSelection(0);
break;
case(R.id.menu2):
gridview.setSelection(10);
}
return super.onOptionsItemSelected(item);
}
发表评论
-
Linkify规则
2011-07-15 15:36 1066Linkify对象可以让系统动态获取,并迅速做出判断;也就 ... -
AppWidget
2011-07-15 15:21 1447以前我们所见的Widget都是以Activity为主体的, ... -
SlidingDrawer
2011-07-15 13:11 2464SlidingDrawer(隐藏式抽屉),它配置上采用了水 ... -
图片处理
2011-07-15 10:14 981Android中提供了Bitmap和BitmapFacto ... -
ListView
2011-07-15 09:12 2112这里主要说一下,ListView支持OnItemClick ... -
ProgressBar
2011-07-14 15:03 2651还记得前面的ProgressDialog吗?在应用时,必须 ... -
DatePicker和TimePicker
2011-07-14 13:42 1137难点没什么难点,主要注意一下,DatePicker的OnD ... -
AnalogClock和DigitalClock
2011-07-14 13:07 1309本篇主要介绍一下AnalogClock和DigitalCl ... -
AutoCompleteTextView
2011-07-14 11:09 1393AutoCompleteTextView具有自动提示功能, ... -
Spinner
2011-07-14 09:44 1614Spinner控件的使用: 1. 创建SpinnerA ... -
RadioGroup
2011-07-13 16:24 1682RadioGroup是用于让用户进行单选的选择按钮,用法很 ... -
自定义Toast效果
2011-07-13 15:18 1261Toast友好用户提示。下面是自己自定义一个Toast。显 ... -
EditText输入内容即时捕捉----OnKeyListner事件
2011-07-13 13:25 3120要想即时捕捉EditText中输入的内容,只要给EditT ... -
Checkbox(打勾显示输入的密码)
2011-07-13 13:04 1668要想判断Checkbox是不是被选中,必须注册OnChec ... -
选择对话框
2011-07-13 11:06 1035这个简单,直接代码 package com.kevin. ... -
ProgressDialog
2011-07-13 10:23 1679ProgressDialog必须要在 ... -
Adapter
2011-07-12 16:25 1049该图为adapter之间的关系。 主要说几点: 1. L ... -
控制不同的文字字体
2011-07-12 15:27 1785TextView对象中有许多 ... -
Menu和AlertDialog对话框
2011-07-12 15:06 1302要在一个activity中实现菜单必须重写两个方法: ... -
startActivityForResult Demo
2011-07-12 14:28 3488startActivityForResult(Itent ...
相关推荐
在ASP.NET开发中,GridView控件是用于展示数据的强大工具,尤其在呈现表格形式的数据时。在本项目中,我们探讨的主题是“GridView内嵌套使用GridView”,这通常是为了实现更复杂的数据显示,例如,当数据有层次关系...
在ASP.NET开发中,GridView控件是用于展示数据表格的常用工具,尤其在处理大量数据时,它提供了灵活的配置和样式化选项。本实例主要关注如何实现GridView的固定表头和列,使得用户在滚动浏览长表格时,表头和部分列...
在Android开发中,GridView是一种常用的布局控件,它允许我们以网格的形式展示数据。当我们处理大量数据时,分页加载可以提高应用性能,减少内存消耗,并提供更好的用户体验。本篇文章将详细讲解如何在Android中利用...
在Android开发中,GridView是一种非常常见的布局控件,它允许我们以网格的形式展示数据,通常用于创建像照片墙、应用列表等界面。本教程将深入探讨如何自定义各种风格的GridView,包括刷新、加载和横向展示等特性。 ...
GridView 和 FormView 是 ASP.NET Web Forms 中常用的两种数据呈现控件,它们在构建动态数据驱动的Web应用程序时扮演着重要角色。在这个“GridView+FormView 示例资料”中,我们将深入探讨这两种控件的功能、用途...
GridView是Android开发中常用的一种控件,主要用于展示数据集,通常以网格的形式排列。它在各种应用中,如图片浏览、应用列表等场景下广泛应用。理解并掌握GridView的点击事件对于构建用户友好的界面至关重要。 ...
ASP.NET GridView 控件是开发Web应用程序时常用的组件,它用于显示和操作数据表格。GridView以其灵活性和易用性,成为了.NET框架中展示数据的强大工具。然而,标准的GridView样式往往较为简单,不符合现代网页设计的...
GridView是Android开发中常见的一种控件,主要用于展示数据集,通常以网格的形式排列。它允许用户在垂直方向上下滚动,但默认情况下不支持水平滑动。然而,标题中提到的需求是在智能手机甚至智能电视上实现GridView...
GridView动态添加模板列知识点汇总 在 ASP.NET 中,GridView控件是最常用的数据展示控件之一,然而,在实际开发中,我们经常需要根据不同的业务需求动态添加模板列,以满足不同的数据展示需求。那么,如何动态添加...
在IT领域,尤其是在Web开发中,GridView控件是ASP.NET中一个非常强大的工具,用于在网页上展示数据。本文将详细介绍如何在C#与ASP.NET环境下设置GridView的列宽,这是一个常见但至关重要的操作,能够显著提升用户...
在ASP.NET开发中,GridView控件是用于展示数据表格的常用组件,特别是在处理数据库查询结果时。本资源“对GRIDVIEW的美化.zip”提供了一种方法来提升GridView的视觉效果,使其更加美观和用户友好。以下是对GridView...
GridView是Android开发中常见的一种控件,用于展示数据集,如图片、文字等,并以网格的形式进行排列。在Android应用开发中,GridView常用于创建类似相册或菜单的界面,用户可以通过横向滑动来查看更多的内容。这个...
【漂亮的GridView样式】是关于在Web开发中,特别是ASP.NET环境中美化GridView控件的一个主题。GridView控件通常用于展示数据表格式的信息,如数据库查询结果。在这个主题中,作者通过CSS(层叠样式表)来改变...
### GridView多行编辑(C#) 在本篇技术文章中,我们将深入探讨如何使用ASP.NET中的`GridView`控件实现多行编辑功能。`GridView`是一个非常强大的数据绑定控件,可以方便地显示、编辑和更新数据库中的数据。通过本...
在Android开发中,GridView是一种常见的布局管理器,用于展示数据集,通常以网格形式排列。在标题"GridView的左右滑动+分页"中,提到的功能是为GridView添加左右滑动以及分页加载数据,这在处理大量数据时非常有用,...
在Android开发中,GridView是一种常用的布局控件,它允许我们以网格的形式展示数据,通常用于创建列表或展示图片。在很多应用中,我们可能需要实现GridView的选中效果,包括设置默认选中项以及选中后的视觉反馈。...
### GridView动态添加空白行 在ASP.NET开发过程中,经常需要对`GridView`控件进行操作,比如动态地向其中添加数据或空行等。本文将详细介绍如何实现ASP.NET后台动态添加`GridView`空行的功能。 #### 知识点概述 1...
在Smobiler中,GridView控件是一种常用的UI组件,用于显示数据列表,类似于其他编程环境中的ListView或者DataGrid。本篇文章将深入探讨如何利用Smobiler实现列表展示,特别是通过GridView控件来达到这一目标。 首先...
在Android开发中,GridView是一种常用的布局控件,它允许我们以网格的形式展示数据。当我们想要在GridView中实现每个Item(单元格)的放大缩小效果时,通常涉及到自定义Adapter、处理点击事件以及调整视图大小等多个...