南方你还在吗 2019-11-25 17:34 采纳率: 0%
浏览 334

为什么只显示是1条列表,使用SimpleAdapter情况下

为什么只显示是1条列表,只显示了1条列表,无法显示后3条

代码如下:

package com.example.student201911233;

import android.app.Activity;
import android.os.Bundle;
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 Activity
{
    private String[] names = new String[]
    { "虎头","弄玉","李清照","李白"};
    private String[] descs = new String[]
            {"可爱的小孩","一个擅长音乐的女孩","一个擅长文学的女孩","浪漫主义诗人"};
    private int[] imageIds = new int[]
            {       R.drawable.laohu,
                    R.drawable.ic_ma,
                    R.drawable.ic_she,
                    R.drawable.ic_zhu};
    private int i;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        //创建一个List集合,List集合的元素是Map
        List<Map<String,Object>> listItems = new ArrayList<Map<String, Object>>();
        for (int i=0;i<names.length;i++);{
            Map<String,Object> listItem = new HashMap<String, Object>();
            listItem.put("header",imageIds[i]);
            listItem.put("personName",names[i]);
            listItem.put("desc",descs[i]);
            listItems.add(listItem);
        }
        //创建一个SimpleAdapted
        SimpleAdapter simpleAdapter = new SimpleAdapter(this,listItems,R.layout.simple_item,
                new String[]{ "personName","header","desc"},new int[]{ R.id.name,R.id.header,R.id.desc});
        ListView listView = (ListView)findViewById(R.id.mylist);
        listView.setAdapter(simpleAdapter);
    }
}

这是主布局,就只有一个ListView。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context=".MainActivity">

    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="使用SimpleAdapted创建List View"></TextView>
    <ListView
        android:id="@+id/mylist"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        ></ListView>



</LinearLayout>

这是次布局,有一个ImageView和2个TextView

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="horizontal"
    android:layout_width="match_parent"
    android:layout_height="wrap_content">
    <ImageView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/header"
        android:padding="10dp"></ImageView>
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical">
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/name"
            android:textSize="20dp"
            android:textColor="#f0f"
            android:paddingLeft="10dp"></TextView>
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/desc"
            android:textSize="14dp"
            android:paddingLeft="10dp"></TextView>
    </LinearLayout>

</LinearLayout>

private int i;
    网上这句话是没有的,但我不加的话,就显示错误了。。。。
  • 写回答

1条回答 默认 最新

  • 代码的灵魂是bug! 2019-11-25 18:40
    关注

    第一,你加private int i;完全是多余的。第二,你的for循环后面多了个分号,请仔细检查代码

    评论

报告相同问题?

悬赏问题

  • ¥15 c程序不知道为什么得不到结果
  • ¥40 复杂的限制性的商函数处理
  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置