自定义listview后程序直接停止运行logcat里一点错误提示都没有是什么原因

问题描述

自定义listview后程序直接停止运行logcat里一点错误提示都没有是什么原因

//MainActivity.java
package com.example.jkd.listview;

import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.ListView;
import android.widget.SimpleAdapter;

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

public class MainActivity extends ActionBarActivity {

private ListView listView = null;
private List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
private SimpleAdapter simpleAdapter = null;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    initView();
}

private void initView() {
    listView = (ListView) super.findViewById(R.id.listView);
    settingAdapter();
    listView.setAdapter(simpleAdapter);
}

private void settingAdapter() {
    initList();
    // map中的key
    String from[] = new String[] { "people", "name", "introduce" };
    // 模板中的组件id
    int to[] = new int[] { R.id.people, R.id.name, R.id.introduce };
    simpleAdapter = new SimpleAdapter(this, list, R.layout.listview_item,
            from, to);
}

private void initList() {
    // 显示的图片资源
    int[] res = new int[] { R.drawable.maaa, R.drawable.mao,
            R.drawable.maoa, R.drawable.maoaa, R.drawable.maoaaa,

};
// 定义一个二维数组来显示姓名和简介
String string[][] = new String[][] { { "猫1", "猫1简介" },
{ "猫2", "猫2简介" }, { "猫3", "猫3简介" }, { "猫4", "猫4简介" },
{ "猫5", "猫5简介" }, };
//初始化list数据
for (int i = 0; i < 9; i++) {
HashMap map = new HashMap();
map.put("people", res[i]);
map.put("name", string[i][0]);
map.put("introduce", string[i][1]);
list.add(map);
}
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.menu_main, menu);
    return true;
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    // Handle action bar item clicks here. The action bar will
    // automatically handle clicks on the Home/Up button, so long
    // as you specify a parent activity in AndroidManifest.xml.
    int id = item.getItemId();

    //noinspection SimplifiableIfStatement
    if (id == R.id.action_settings) {
        return true;
    }

    return super.onOptionsItemSelected(item);
}

}

//avtivity_main.xml
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
android:layout_height="wrap_content" android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity">

<ListView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/listView"
    android:layout_marginTop="17dp"
    android:layout_alignParentTop="true"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true" />

//listview_item.xml
<?xml version="1.0" encoding="utf-8"?>
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal" >

<ImageView
    android:id="@+id/people"
    android:layout_width="100dp"
    android:layout_height="100dp"
    android:layout_margin="10dp" />

<LinearLayout
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <TextView
        android:id="@+id/name"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginLeft="10dp"
        android:layout_marginTop="10dp"
        android:text="TextView" />

    <TextView
        android:id="@+id/introduce"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginLeft="10dp"
        android:layout_marginTop="10dp"
        android:text="TextView" />

</LinearLayout>

<LinearLayout
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:orientation="vertical" >
</LinearLayout>

解决方案

数组越界吧,你明明5个,循环写的9个

解决方案二:

把初始化,getview等敏感的地方打上断点,耐心调试

时间: 2024-08-03 06:49:43

自定义listview后程序直接停止运行logcat里一点错误提示都没有是什么原因的相关文章

窗口风格-MFC SDI禁掉最大化按钮后程序把桌面任务里覆盖了,求大神解答

问题描述 MFC SDI禁掉最大化按钮后程序把桌面任务里覆盖了,求大神解答 2C MFC SDI禁掉最大化按钮后程序把桌面任务里覆盖了,求大神解答 解决方案 我是在 PreCreate 函数修改的窗口风格 BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs){ if( !CFrameWndEx::PreCreateWindow(cs) ) return FALSE; // TODO: 在此处通过修改 // CREATESTRUCT cs 来修改窗口

卡巴斯基安装程序过程中出现1603等错误提示

造成这种情况的原因一般是由windowsinstaller出错造成的,首先查看windows installer服务,一般为停用.如果试图在service中启用,有时会发现,被系统禁用,再启动,提示:"指定的服务已标记为删除" . 其解决方法是: 1.先用msiexec /unregserver 停掉windows installer服务.在运行中..输入. 2.下载Windows Installer3.1 新的安装程序安装. 3.再用msiexec.exe /regserver 启用

unix重启进程后,日志文件出现很多这样的提示

问题描述 ClusterManager:detected1failedorrestartedinstances.ClusterManager:Scanningforinstance"****-test1.138***0403726"'sfailedin-progressjobs.unix重启进程后,日志文件出现很多这样的提示,这是什么原因造成的?是启进程的顺序不对,还是什么情况,求解?前台的应用都是可以正常使用的,就日志文件会每隔多少时间就会出现这样的提示 解决方案 解决方案二:求解呀

android虚拟机里程序一直停止运行

问题描述 android虚拟机里程序一直停止运行 ActivityManager: Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=edu.nuist.zhangtong.baiduMap/.LoginActivity } logcat: 01-05 00:06:04.698: D/dalvikvm(1225): Not late-enabling Check

Android程序美化之自定义ListView背景的方法

本文实例讲述了Android程序美化之自定义ListView背景的方法.分享给大家供大家参考,具体如下: 在Android中,ListView是最常用的一个控件,在做UI设计的时候,很多人希望能够改变一下它的背景,使他能够符合整体的UI设计,改变背景背很简单只需要准备一张图片然后指定属性 android:background="@drawable/bg",不过不要高兴地太早,当你这么做以后,发现背景是变了,但是当你拖动,或者点击list空白位置的时候发现ListItem都变成黑色的了,

连接手机-为什么eclipse连接上手机后就狂打Logcat日志

问题描述 为什么eclipse连接上手机后就狂打Logcat日志 为什么eclipse连接上手机,没有运行任何程序的情况下,logcat狂打日志,拔掉数据线后就停止打印,连接上后继续狂打,,,这是闹哪样,大神帮着看看,谢了 解决方案 你手机里边的程序打的 解决方案二: 手机越山寨.装的应用越多,输出量就越多,更有甚者几秒钟就能打出成千上万条 输的Log是方便调试,也反应系统及各应用动态数据,想像一下不能输出Log,将如何调试吧 你可以在LogCat里过滤掉(绿色的+号),只显示对应的Log,比如

安卓-关于提示eclipse上,“XX出错,程序已停止运行”的原因!

问题描述 关于提示eclipse上,"XX出错,程序已停止运行"的原因! 今天写了个小程序,在写按钮监听了时候出现了问题,反复检查代码,发现加上button.setOnClickListener(new Buttonlistener());这句话后,一运行,程序就终止运行,注释掉后,没问题,布局可以显示,本人菜鸟,望大神解答,如对问题有困惑,可指出,一直在,随时恭候. 解决方案 感觉把你的代码或者log信息粘出来或许更好,这样看不出来你的错误在哪 解决方案二: 详细说下,先在布局里添加

Android UI设计系列之自定义ListView仿QQ空间阻尼下拉刷新和渐变菜单栏效果(8)_Android

好久没有写有关UI的博客了,刚刚翻了一下之前的博客,最近一篇有关UI的博客:Android UI设计系列之自定义Dialog实现各种风格的对话框效果(7) ,实现各种风格效果的对话框,在那篇博客写完后由于公司封闭开发封网以及其它原因致使博客中断至今,中断这么久很是惭愧,后续我会尽量把该写的都补充出来.近来项目有个需求,要做个和QQ空间类似的菜单栏透明度渐变和下拉刷新带有阻尼回弹的效果.于是花点时间动手试了试,基本上达到了QQ空间的效果,截图如下:         通过观察QQ空间的运行效果,发现

Android自定义ListView实现仿QQ可拖拽列表功能_Android

我们大致的思路,其实是这样子的,也是我的设想,我们可以先去实现一个简单的ListView的数据,但是他的Adapter,我们可以用系统封装好的,然后传递进去一个实体类,最后自定义一个listview去操作,所以我们先把准备的工作做好,比如? list_item.xml <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.a