android GridView 的一个问题,我想把gridview设置成日历,4行7列,怎么实现

android GridView 的一个问题,我想把gridview设置成日历,4行7列,怎么实现,第1张

首先Gridview,设置numcols=7,然后设置每页的size为47 ,这样能够保证每页就是4行7列。 然后就是隐藏textview的问题了,这个实现就有多种方法了。 可以自定一个SurfaceView,在这个SurfaceView中添加textview,当然也可以直接,只是多加一层(遮罩层)。要控制好隐藏很简单visibility的Gone和visible就行了。看你的Item的xml布局写的如何了。 要隐藏和显示可以添加淡入淡出或者其他的动画效果。

你可以通过getSelectedItem()获取这个Item绑定的数据,这个数据应该包括(和文字),这样就可以获取到点击的Item里面的文字。也可以调用getSelectedView()通过findViewById()找到这个TextView,调用getText()获取到文字

GirdView的一些属性:

android:numColumns="auto_fit" --------列数设置为自动

android:columnWidth="90dp",----------每列的宽度,也就是Item的宽度

android:stretchMode="columnWidth"------缩放与列宽大小同步

android:verticalSpacing="10dp"----------垂直边距

android:horizontalSpacing="10dp"-------水平边距

GridView(网格视图)是按照行列的方式来显示内容的,一般用于显示,等内容,比如实现九宫格图,用GridView是首选,也是最简单的,

package comexampletestgridview;

import javautilArrayList;

import javautilHashMap;

import javautilList;

import javautilMap;

import androidappActivity;

import androidosBundle;

import androidwidgetGridView;

import androidwidgetSimpleAdapter;

public class MainActivity extends Activity {

private GridView gview;

private List<Map<String, Object>> data_list;

private SimpleAdapter sim_adapter;

// 封装为一个数组

private int[] icon = { Rdrawableaddress_book, Rdrawablecalendar,

Rdrawablecamera, Rdrawableclock, Rdrawablegames_control,

Rdrawablemessenger, Rdrawableringtone, Rdrawablesettings,

Rdrawablespeech_balloon, Rdrawableweather, Rdrawableworld,

Rdrawableyoutube };

private String[] iconName = { "通讯录", "日历", "照相机", "时钟", "游戏", "短信", "铃声",

"设置", "语音", "天气", "浏览器", "视频" };

@Override

protected void onCreate(Bundle savedInstanceState) {

superonCreate(savedInstanceState);

setContentView(Rlayouttest);

gview = (GridView) findViewById(Ridgview);

//新建List

data_list = new ArrayList<Map<String, Object>>();

//获取数据

getData();

//新建适配器

String [] from ={"image","text"};

int [] to = {Ridimage,Ridtext};

sim_adapter = new SimpleAdapter(this, data_list, Rlayoutitem, from, to);

//配置适配器

gviewsetAdapter(sim_adapter);

}

public List<Map<String, Object>> getData(){

//cion和iconName的长度是相同的,这里任选其一都可以

for(int i=0;i<iconlength;i++){

Map<String, Object> map = new HashMap<String, Object>();

mapput("image", icon[i]);

mapput("text", iconName[i]);

data_listadd(map);

}

return data_list;

}

}

parentgetAdapter()getItem(position)

parentgetItemAtPosition(position)

这两个方法都行,返回Object类型,你可以进行一下转型

注:如果你看源码的话会发现其实都是用adaptergetItem(position) 获得的

以上就是关于android GridView 的一个问题,我想把gridview设置成日历,4行7列,怎么实现全部的内容,包括:android GridView 的一个问题,我想把gridview设置成日历,4行7列,怎么实现、怎样在android中取得GridView中一个Item中TextView的值、android gridview怎么用等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9521776.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存