SugarOrm 数据显示垃圾

SugarOrm data display junk

当我显示显示垃圾数据的数据时,我使用列表视图显示数据。

public class MainActivity extends ActionBarActivity {

    Button btnSave, btnDelete;
    EditText title, edition;
    ListView mListView;
    ArrayAdapter<Book> adapter;

    Book book = new Book();


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

        title = (EditText) findViewById(R.id.editTextTitle);
        edition = (EditText) findViewById(R.id.editTextEdition);

        btnSave = (Button) findViewById(R.id.buttonSave);
        btnDelete = (Button) findViewById(R.id.buttonDelete);

        mListView = (ListView) findViewById(R.id.listView);

        // List<Book> list= Select.from(Book.class).list();
        List<Book> list = Book.listAll(Book.class);

        adapter = new ArrayAdapter<Book>(MainActivity.this, android.R.layout.simple_list_item_1, list);
        mListView.setAdapter(adapter);

        Toast.makeText(getApplicationContext(), "" + list, Toast.LENGTH_LONG).show();


        btnSave.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                book = new Book(title.getText().toString(), edition.getText().toString());
                book.save();

                Toast.makeText(getApplicationContext(), "" + book, Toast.LENGTH_LONG).show();
            }
        });

        btnDelete.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                Book book = Book.findById(Book.class, (long) 1);
                book.delete();
            }
        });


    }

}

Book.java

public class Book  extends SugarRecord<Book>{

    String title;
    String Edition;

    public Book()
    {

    }
    public Book(String title,String Edition)
    {
        this.title=title;
        this.Edition=Edition;
    }
}

当我删除数据时它也删除了但是当显示它时显示垃圾数据我怎样才能显示正确的数据?

您需要创建一个自定义适配器来呈现图书对象中的值。最简单的选择是实现 Book class 中的 toString() 方法。那应该可以解决这个问题。

您必须使用 toString() 方法才能删除 juck 值,确保插入单个值,因为 toString() 可以return 仅单个值

import com.orm.SugarRecord;       // package


public class Book  extends SugarRecord{     /// inheritance

String title;                   //var

public  Book()                  //constructor
{
}

public  Book(String title)      //method
{
this.title=title;                 //  this keyword refer current object
}


 public String toString()            // method
 {
 return title;                    //string return value
 }

如果您有任何问题,可以观看此视频 https://youtu.be/lv4QanVZfs4