AfterYoung 2021-04-06 11:08 采纳率: 81.8%
浏览 34
已采纳

为什么我的listview显示的是一串数字而不是内容?

//这只是initviews的部分代码
@Override
    public void initViews(View view) {
        toolbar = view.findViewById(R.id.mine_toolbar);
        mListView = view.findViewById(R.id.mine_listview);
        mineLoginRl = view.findViewById(R.id.mine_login_rl);
        mImageView = view.findViewById(R.id.mine_circleImageView);
        tvName = view.findViewById(R.id.tv_username);

        iniToolbar();

        mImageView.bringToFront();

        setAdapterMineOrder();


//给listview添加内容的函数

private void setAdapterMineOrder(){
        ArrayList<String> strList = new ArrayList<>();
        strList.add("帮助中心");
        strList.add("我的收藏");
        strList.add("个人资料");
        ArrayList<Integer> ivList = new ArrayList<>();
        ivList.add(R.mipmap.bzzx);
        ivList.add(R.mipmap.wdsc);
        ivList.add(R.mipmap.wdzl);
        ArrayList<HashMap<String , Object>> listItem = new ArrayList<HashMap<String, Object>>();

        for (int i = 0; i <strList.size() ; i++) {
            HashMap<String , Object> map = new HashMap<>();
            map.put("textcontext" , strList.get(i));
            map.put("ivdrawable" , ivList.get(i));
            listItem.add(map);
        }
        String[] from  = {"textcontext" , "ivdrawable"};
        int[] to ={R.id.mine_item_img , R.id.mine_item_text};
        mSimpleAdapter = new SimpleAdapter(getActivity(),listItem ,
                R.layout.more_itemlist , from , to){
            @Override
            public View getView(int position, View convertView, ViewGroup parent) {
                return super.getView(position, convertView, parent);
            }
        };
        mListView.setAdapter(mSimpleAdapter);
        mSimpleAdapter.notifyDataSetChanged();
    }

得到的listview就是这样的

 

  • 写回答

2条回答 默认 最新

  • knight康康 2021-04-06 13:48
    关注

    你的form 和 to 的对应关系应该搞反了,那些显示数字应该是图片的id 

    没看到你的布局代码,看你id名 R.id.mine_item_img ,猜测这个对应的是ImageView

     

     String[] from  = {"textcontext" , "ivdrawable"};
    
    //int[] to ={R.id.mine_item_img , R.id.mine_item_text};
    
    int[] to ={R.id.mine_item_text , R.id.mine_item_img};
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 请问读取环境变量文件失败是什么原因?
  • ¥15 在若依框架下实现人脸识别
  • ¥15 网络科学导论,网络控制
  • ¥100 安卓tv程序连接SQLSERVER2008问题
  • ¥15 利用Sentinel-2和Landsat8做一个水库的长时序NDVI的对比,为什么Snetinel-2计算的结果最小值特别小,而Lansat8就很平均
  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载