为了账号安全,请及时绑定邮箱和手机立即绑定

为什么只显示一个

package com.example.listviewtest3;


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.ArrayAdapter;

import android.widget.ListView;

import android.widget.SimpleAdapter;



public class MainActivity extends Activity {


   ListView listvew;

   ArrayAdapter<String>arr_adapter;

   SimpleAdapter sim_adapter;

   List<Map<String,Object>> datalist;

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_main);

        listvew=(ListView) findViewById(R.id.listView1);

    

       // arr_adapter=new ArrayAdapter<String>(MainActivity.this, android.R.layout.simple_list_item_1, s);

        getdata();

        sim_adapter=new SimpleAdapter(MainActivity.this, datalist, R.layout.item, new String[]{"image","test"}, new int[]{R.id.imageView1,R.id.textView1});

        listvew.setAdapter(sim_adapter);

    }

private List< Map<String, Object>> getdata() {

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

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

map.put("image", R.drawable.ic_launcher);

map.put("test", "上海");

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

map.put("image", R.drawable.ic_launcher);

map.put("test", "北京");

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

map.put("image", R.drawable.ic_launcher);

map.put("test", "广东");

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

map.put("image", R.drawable.ic_launcher);

map.put("test", "深圳");

datalist.add(map);

datalist.add(map1);

datalist.add(map2);

datalist.add(map3);

// TODO Auto-generated method stub

return datalist;

}


    

}


正在回答

4 回答

你后面datalist.add(map);datalist.add(map1);datalist.add(map2);datalist.add(map3);实际上map1,map2,map3都为空,所以只显示了一个,只有map有值

0 回复 有任何疑惑可以回复我~

因为你后面重新新建的Map,你的名字都改变了的,分别为map,map1,map2等,然后,你增加键值对的时候,都是用的map.put(),应该要用map,map1,map2等

0 回复 有任何疑惑可以回复我~

<?xml version="1.0" encoding="utf-8"?>

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"

    android:layout_width="match_parent"

    android:layout_height="match_parent" >


    <ImageView

        android:id="@+id/imageView1"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:layout_alignParentLeft="true"

        android:layout_alignParentTop="true"

        android:layout_marginTop="15dp"

        android:src="@drawable/ic_launcher" />


    <TextView

        android:id="@+id/textView1"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:layout_alignTop="@+id/imageView1"

        android:layout_marginTop="14dp"

        android:layout_toRightOf="@+id/imageView1"

        android:text="TextView" />


</RelativeLayout>


0 回复 有任何疑惑可以回复我~

把R.layout.item 贴出来看看?

应该是layout布局重叠在一起了吧

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Android攻城狮的第二门课(第1季)
  • 参与学习       111162    人
  • 解答问题       1457    个

本课程由浅入深地带您学会Android的常用控件的开发和使用

进入课程

为什么只显示一个

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信