2 u014301482 u014301482 于 2016.04.04 15:10 提问

android中gridView问题,程序无法运行

一下是代码:
package com.example.android_gridview;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.GridView;
import android.widget.SimpleAdapter;

public class MainActivity extends Activity {

private GridView gridView;
private List<Map<String,Object>>dataList;
private int[]icon={R.drawable.tu1,R.drawable.tu2,R.drawable.tu3png,R.drawable.tu4};
private String[]iconName={"天气","日历","时钟","铃声"};
private SimpleAdapter adapter;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    gridView=(GridView) findViewById(R.id.gridView);
    //1、准备数据源
    //2、新建适配器(SimpleAdapter)
    //3、GridView加载适配器
    //4、GridView配置事件监听器(OnItemClickListener)
    dataList=new ArrayList<Map<String,Object>>();
    getData();
    adapter=new SimpleAdapter(this,getData(),
            R.layout.item,new String[]{"img","text"},
            new int[]{R.id.image,R.id.text});
    gridView.setAdapter(adapter);

}
private List<Map<String,Object>> getData(){
    for(int i=0;i<icon.length;i++){
    Map<String,Object>map=new HashMap<String,Object>();
    map.put("img", icon[i]);
    map.put("text",iconName[i]);
    dataList.add(map);
}return dataList;


} 

}
程序无法运行

5个回答

CSDNXIAON
CSDNXIAON   2016.04.04 15:22

程序在别的机器上无法运行的问题
关于使用eclipse开发android程序不能运行的问题。
----------------------同志你好,我是CSDN问答机器人小N,奉组织之命为你提供参考答案,编程尚未成功,同志仍需努力!

fengyun703
fengyun703   2016.04.04 22:37

可以把log贴出了,看看log。

qq_32969313
qq_32969313   2016.04.05 09:17

把出错是报错的log贴出了,这样才能看到为啥不能运行

bruse_android
bruse_android   2016.04.05 23:54

SimpleAdapter adapter = new SimpleAdapter(this,
(dataList, R.layout.griditem,
new String[] { "img","text" }, new int[] { R.id.image,R.id.text });

KILL12580
KILL12580   2016.04.06 16:24

改成下面的试试

 dataList=getData();
  adapter=new SimpleAdapter(this,getData(),
            R.layout.item,new String[]{"img","text"},
            new int[]{R.id.image,R.id.text});
    gridView.setAdapter(adapter);
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
android开发在ScrollView中的GridView显示问题及原因
android开发中ScrollView里有GridView时,GridView只显示一行,网络上通常的解决方案就是如下代码: public class NoScrollGridView extends GridView {   public NoScrollGridView(Context context) {   super(context);   }   public NoScro
ListView嵌套GridView时遇到的一些坑
最近在做课程设计的时候用到了ListView列表来显示数据,虽然谷歌已经推出RecyclerView,并且已经逐步取代了ListView,可是无奈我最后还是选择了ListView。课程设计的需求是用ListView来嵌套GridView来显示数据,GridView是用来显示图片的。照着常规方法将GridView作为ListView中Item布局的一部分来显示,给GridView设置numColumn
ExpandableListView里面嵌套GridView的问题
ExpandableListView里面child的高度自适应,当加载GridView控件时,由于ExpandableListView里面child长度设置为一,所以导致GridView没法完全显示。 解决办法: 在GridView onMeasure方法里面设置一个高度,就可以完全显示了。 protected void onMeasure(int widthMeasureSpec, in
android listview嵌套viewpager,viewpager嵌套gridview,解决内嵌无法显示以及事件冲突的问题
GridView:解决无法有高度的问题 /** * 解决和ScrollView嵌套使用时,滚动发生冲突 */ public class MyGridView extends GridView { public MyGridView(Context context, AttributeSet attrs, int defStyle) { super(conte
listView,gridView复用问题
前一段时间一直有一个问题困扰着我,就是listView中item的复用问题,从数据库请求下来的状态,然后会错乱,比如item被选中,然后在拉下去再返回去状态就改变 其实问题很简单,就是用一个map存储起来你的状态,然后在判断完convertview之后,赋值的时候设置判断 我的是从服务器读取的状态 因为重写的getView()是每次item出现的时候都要运行一遍,所以就在getView之后的
完美解决ListView内部嵌套GridView导致各种异常,无法点击的问题
完美解决ListView内部嵌套GridView导致各种异常,无法点击的问题,包含遇到的问题可能有:1、gridview显示不全。无法占满。2、listView点击item点击事件无效 3、GridView点击事件无效。4、假如GridView每行显示3个。但是某一行只有2张图片,那么第三张图片所在的空白区域点击事件无法触发 listView的Item 的点击事件。也就是说。这部分空白区域点击事件丢失了?
【转】解决GridView中嵌入CheckBox事件无法响应的问题
今天在一个项目中的某个页面内添加了一个GridView表控件,其中一个字段为模板列,放入了一个CheckBox复选框控件,我希望用户在选择复选框时能激发它的CheckedChanged事件,从而进行数据库的操作,代码如下: ASPX页面代码: asp:GridView ID="gridCursor" runat="server" CssClass="Grid" Width="90%"
RecyclerView嵌套GridView显示不全,Item的复用的问题
1.嵌套GridView  RecyclerView非常方便使用,每个Item可以嵌套不同的布局,通过 public int getItemViewType(int position) 可以获取到每个Item的布局类型。想在其中的一个Item就是GridView控件。大家知道,多个含有滑动效果的控件嵌套在一起,很容易出现滑动冲突的问题。一般的解决办法:把内层的控件布局重新计算后再绘制出来。也就是
android开发 gridview的item与子控件焦点问题
最近项目中用到了gridview,顺带对gridview的item与子控件焦点问题进行小小的研究比较下; 项目需求:在simphone手持把枪上通过方向按钮实现gridview的菜单选择; 实现方法1:在子布局中写入button的background属性,在gridview中定义descendantFocusability为afterDescendants,让button优先获得焦点
ScrollView嵌套GridView的滚动事件解决
今天在项目中遇到一个ScrollView嵌套GridView的情况,由于这两款控件都自带滚动条,外层的ScrollView会对滚动事件进行拦截,就会存在GridView会显示不全。  解决办法,继承GridView控件,重写onMeasure方法,使其不会出现滚动条,ScrollView嵌套ListView也是同样的道理:修改如下 /** * 类描述:自定义一个GridV