ListView 中的数据来自 SQLite // 适配器错误

约翰沃尔

TachesFragment.java

package com.example.johnwalls.projet;


import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.Spinner;
import android.widget.TextView;

import java.util.ArrayList;


/**
 * A simple {@link Fragment} subclass.
 */
public class TachesFragment extends Fragment {
    private DB base;
    private ListView sp ;

    public TachesFragment() {
        // Required empty public constructor
    }


    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        // Inflate the layout for this fragment

        View view = inflater.inflate(R.layout.fragment_taches, container, false);

        TextView text2 =  view.findViewById(R.id.ta);//Find textview Id
        TextView t1 =     view.findViewById(R.id.t1);
        TextView de1=     view.findViewById(R.id.de1);
        TextView em1=     view.findViewById(R.id.em1);
        String getArgument = getArguments().getString("main");
        text2.setText(getArgument);


        base=new DB(getActivity());

        text2.setText(getArgument);

        sp=(ListView) view.findViewById(R.id.ta);
        ArrayList<Mission> empList=base.MissionList();
        ArrayAdapter<String> adapter=new ArrayAdapter<String>(getActivity(),android.R.layout.simple_list_item_1,android.R.id.text1,empList);
        sp.setAdapter(adapter);





        return view;
    }

}

fragment_taches

<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"


    android:layout_height="match_parent"
    android:layout_width="match_parent"
    android:paddingLeft="16dp"
    android:paddingRight="16dp"
    android:paddingTop="16dp"
    android:paddingBottom="16dp"
    android:gravity="bottom"
    android:orientation="vertical"
    android:background="@drawable/ee63"

    tools:context="com.example.johnwalls.projet.TachesFragment">

    <ListView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_marginTop="100dp"
        android:layout_marginBottom="15dp"
        android:layout_marginRight="10dp"
        android:layout_marginLeft="10dp"

        android:id="@+id/ta"

        />


</android.support.v4.widget.DrawerLayout>

simple_list_item_1

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingTop="5dp"
    android:paddingBottom="5dp"
    android:paddingLeft="5dp"
    android:paddingRight="5dp"

    >

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/t1"
        android:textSize="20dp"
        android:text=""
        />
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/de1"
        android:textSize="10dp"
        android:text=""
        />
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/em1"
        android:textSize="10dp"
        android:text=""
        />


</LinearLayout>

你想达到什么你期望得到什么 你得到了什么(包括错误消息) 你还尝试了什么?你认为是什么原因造成的?为什么你需要为它提出一个新问题?为什么您的问题与此处的其他类似问题不同?

迈克

我相信您的问题是您告诉ArrayAdapterArray of String 对象 ( ArrayAdapter<String>) 但您提供了一组Mission对象ArrayList<Mission> emplist=base.MissionList();

即你有

    ArrayList<Mission> empList=base.MissionList(); 
    ArrayAdapter<String> adapter=new ArrayAdapter<String>(getActivity(),android.R.layout.simple_list_item_1,android.R.id.text1,empList);

相反,我认为你需要:-

    ArrayList<Mission> empList=base.MissionList(); //<<<< NOT CHANGED
    ArrayAdapter<Mission> adapter=new ArrayAdapter<>(getActivity(),android.R.layout.simple_list_item_1,android.R.id.text1,empList);
  • 请注意,任务的toString方法将用于为列表提供数据,如果您没有覆盖该toString方法,结果可能与您预期的不同。例如

com.example.johnwalls.projet.Mission@546789

在这种情况下,您应该创建一个toString方法来返回适当的字符串。

作为一个例子(不要按原样使用),这是一个带有重写toString方法的 TaskData 类:-

public class TaskData {

    private long id;
    private String type, name, owner, expiration;

    public TaskData(long id, String type, String name, String owner, String expiration) {
        this.id = id;
        this.type = type;
        this.name = name;
        this.owner = owner;
        this.expiration = expiration;
    }

    //<<<< Oreridden toString Method Starts here >>>>
    public String toString() {
        return " Typ: " + type + " Name: " + name + " Owner: " + owner + " Until: " + expiration;
    }
    //<<<< End >>>>

    public long getId(){return id;}
    public String getType() {return this.type;}
    public String getName() {return this.name;}
    public String getOwner() {return this.owner;}
    public String getExpiration() {return  this.expiration;}
}
  • 重写的 toString 方法返回一个字符串,该字符串结合了类型名称、所有者和到期时间。例如

    类型:测试名称:Fred所有者:Bert直到:31/12/2018

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Android-在Listview中显示来自适配器的数据

来自分类Dev

使用游标适配器将数据从sqlite显示到listview

来自分类Dev

如何使用自定义基本适配器和sqlite数据库刷新Listview?

来自分类Dev

按钮Listview适配器中的showDialog

来自分类Dev

按钮Listview适配器中的showDialog

来自分类Dev

如何从适配器更新sqlite listview项目?

来自分类Dev

适配器上的arraylist.remove()删除ListView中的错误项目

来自分类Dev

Android中的ListView和适配器,是否属于适配器设计模式?

来自分类Dev

如何解决可扩展Listview中的错误“适配器的内容已更改,但ListView没有收到通知”?

来自分类Dev

即使适配器不为空,ListView也不会显示数据

来自分类Dev

Android Studio中的ListView中的适配器

来自分类Dev

无法使用简单适配器查看数据SQLite

来自分类Dev

通过文件或适配器填充SQLite数据库

来自分类Dev

在listview适配器内部的setOnEditorActionListener中传递多个值

来自分类Dev

在片段中为ListView设置适配器

来自分类Dev

Android中的ListView计数与适配器计数

来自分类Dev

Android ListView更改项在适配器中的选定状态

来自分类Dev

在阵列适配器中获取ListView的宽度

来自分类Dev

带有arraylist的listview,android中的简单适配器

来自分类Dev

ListView适配器中的findViewById与View Holder模式

来自分类Dev

在其ListView适配器中调用fragmnet

来自分类Dev

适配器ListView中的onTouchListener使onItemClickListener不运行

来自分类Dev

如何从Android的Listview中删除适配器

来自分类Dev

我的Android Listview适配器中的IndexOutOfBoundsException

来自分类Dev

ListView适配器中的findViewById与View Holder模式

来自分类Dev

如何在其适配器中刷新android listview

来自分类Dev

自定义ListView适配器中的NullPointerException

来自分类Dev

Android ListView中适配器和模板视图的组合

来自分类Dev

listview适配器类中的startActivity失败

Related 相关文章

  1. 1

    Android-在Listview中显示来自适配器的数据

  2. 2

    使用游标适配器将数据从sqlite显示到listview

  3. 3

    如何使用自定义基本适配器和sqlite数据库刷新Listview?

  4. 4

    按钮Listview适配器中的showDialog

  5. 5

    按钮Listview适配器中的showDialog

  6. 6

    如何从适配器更新sqlite listview项目?

  7. 7

    适配器上的arraylist.remove()删除ListView中的错误项目

  8. 8

    Android中的ListView和适配器,是否属于适配器设计模式?

  9. 9

    如何解决可扩展Listview中的错误“适配器的内容已更改,但ListView没有收到通知”?

  10. 10

    即使适配器不为空,ListView也不会显示数据

  11. 11

    Android Studio中的ListView中的适配器

  12. 12

    无法使用简单适配器查看数据SQLite

  13. 13

    通过文件或适配器填充SQLite数据库

  14. 14

    在listview适配器内部的setOnEditorActionListener中传递多个值

  15. 15

    在片段中为ListView设置适配器

  16. 16

    Android中的ListView计数与适配器计数

  17. 17

    Android ListView更改项在适配器中的选定状态

  18. 18

    在阵列适配器中获取ListView的宽度

  19. 19

    带有arraylist的listview,android中的简单适配器

  20. 20

    ListView适配器中的findViewById与View Holder模式

  21. 21

    在其ListView适配器中调用fragmnet

  22. 22

    适配器ListView中的onTouchListener使onItemClickListener不运行

  23. 23

    如何从Android的Listview中删除适配器

  24. 24

    我的Android Listview适配器中的IndexOutOfBoundsException

  25. 25

    ListView适配器中的findViewById与View Holder模式

  26. 26

    如何在其适配器中刷新android listview

  27. 27

    自定义ListView适配器中的NullPointerException

  28. 28

    Android ListView中适配器和模板视图的组合

  29. 29

    listview适配器类中的startActivity失败

热门标签

归档