попробуйте классифицировать список предметов в указанной категории c - PullRequest
1 голос
/ 30 января 2020

Я пытаюсь создать проект в Android приложениях, использующих ((SQLite)), и у этого проекта есть категории, и мне нужно напечатать группу элементов в определенной категории. Мне удалось написать эту функцию, но эта функция печатает только первый элемент, который я добавляю для каждой категории, но когда я пытаюсь добавить другой элемент в ту же категорию, он не печатает его. Я не знаю, где проблема. функция отображения ниже

public ArrayList<CatygoryInformation> DisplaySpecificItem(int CatID)
    {

        ArrayList<CatygoryInformation> catygoryInformations = new ArrayList<>();

        String select_query = "SELECT * FROM " + TABLE_CATEGORY + " WHERE " + COLO_ID + "=" + CatID;

        SQLiteDatabase db = this.getReadableDatabase();

        Cursor cursor = db.rawQuery(select_query, null);

        if (cursor.moveToFirst())
        {
            do
            {
                int id = cursor.getInt(cursor.getColumnIndex(COLO_ID));

                String CCatName = cursor.getString(cursor.getColumnIndex(COLO_CATEGORY_NAME));

                String CCatTitle = cursor.getString(cursor.getColumnIndex(COLO_TEXTTITTLE));

                String CCatDescription = cursor.getString(cursor.getColumnIndex(COLO_DESCRIPTION_CATEGORY));

                CatygoryInformation catygoryInformation = new CatygoryInformation(CCatName, id,CCatTitle, CCatDescription);

                catygoryInformations.add(catygoryInformation);
            } while (cursor.moveToNext());
        }

        db.close();

        return  catygoryInformations;
    }

и эта функция для добавления

public void addInformationCategory(CatygoryInformation category)
    {
        SQLiteDatabase db = this.getWritableDatabase();

        ContentValues values = new ContentValues();

        values.put(COLO_ID, category.getId());
        values.put(COLO_CATEGORY_NAME, category.getCatygoryName());
        values.put(COLO_TEXTTITTLE, category.getTextTittle());
        values.put(COLO_DESCRIPTION_CATEGORY, category.getDescriptionCategory());


        db.insert(TABLE_CATEGORY, null, values);
        db.close();
    }`

это домашняя страница, которая имеет категорию

Ambulance.setOnClickListener(new View.OnClickListener()
        {
            @Override
            public void onClick(View v)
            {
                Intent ambulanceintent = new Intent(HomeUserActivity.this, ShowInformationToUserActivity.class);
                ambulanceintent.putExtra("ID", "1");

                startActivity(ambulanceintent);
            }
        });

        BloodClot.setOnClickListener(new View.OnClickListener()
        {
            @Override
            public void onClick(View v)
            {
                Intent ambulanceintent = new Intent(HomeUserActivity.this, ShowInformationToUserActivity.class);
                ambulanceintent.putExtra("ID", "2");
                startActivity(ambulanceintent);
            }
        });

        FirstAid.setOnClickListener(new View.OnClickListener()
        {
            @Override
            public void onClick(View v)
            {
                Intent ambulanceintent = new Intent(HomeUserActivity.this, ShowInformationToUserActivity.class);
                ambulanceintent.putExtra("ID", "3");
                startActivity(ambulanceintent);
            }
        });

        Breathing.setOnClickListener(new View.OnClickListener()
        {
            @Override
            public void onClick(View v)
            {
                Intent ambulanceintent = new Intent(HomeUserActivity.this, ShowInformationToUserActivity.class);
                ambulanceintent.putExtra("ID", "4");
                startActivity(ambulanceintent);
            }
        });

        SunStroke.setOnClickListener(new View.OnClickListener()
        {
            @Override
            public void onClick(View v)
            {
                Intent ambulanceintent = new Intent(HomeUserActivity.this, ShowInformationToUserActivity.class);
                ambulanceintent.putExtra("ID", "5");
                startActivity(ambulanceintent);
            }
        });

        Sinking.setOnClickListener(new View.OnClickListener()
        {
            @Override
            public void onClick(View v)
            {
                Intent ambulanceintent = new Intent(HomeUserActivity.this, ShowInformationToUserActivity.class);
                ambulanceintent.putExtra("ID", "6");
                startActivity(ambulanceintent);
            }
        });

        HeartAttack.setOnClickListener(new View.OnClickListener()
        {
            @Override
            public void onClick(View v)
            {
                Intent ambulanceintent = new Intent(HomeUserActivity.this, ShowInformationToUserActivity.class);
                ambulanceintent.putExtra("ID", "7");
                startActivity(ambulanceintent);
            }
        });

        BounesBroken.setOnClickListener(new View.OnClickListener()
        {
            @Override
            public void onClick(View v)
            {
                Intent ambulanceintent = new Intent(HomeUserActivity.this, ShowInformationToUserActivity.class);
                ambulanceintent.putExtra("ID", "8");
                startActivity(ambulanceintent);
            }
        });

        Electrocution.setOnClickListener(new View.OnClickListener()
        {
            @Override
            public void onClick(View v)
            {
                Intent ambulanceintent = new Intent(HomeUserActivity.this, ShowInformationToUserActivity.class);
                ambulanceintent.putExtra("ID", "9");
                startActivity(ambulanceintent);
            }
        });

        BrainClot.setOnClickListener(new View.OnClickListener()
        {
            @Override
            public void onClick(View v)
            {
                Intent ambulanceintent = new Intent(HomeUserActivity.this, ShowInformationToUserActivity.class);
                ambulanceintent.putExtra("ID", "10");
                startActivity(ambulanceintent);
            }
        });

        Scorpio.setOnClickListener(new View.OnClickListener()
        {
            @Override
            public void onClick(View v)
            {
                Intent ambulanceintent = new Intent(HomeUserActivity.this, ShowInformationToUserActivity.class);
                ambulanceintent.putExtra("ID", "11");
                startActivity(ambulanceintent);
            }
        });

        OralPoisoning.setOnClickListener(new View.OnClickListener()
        {
            @Override
            public void onClick(View v)
            {
                Intent ambulanceintent = new Intent(HomeUserActivity.this, ShowInformationToUserActivity.class);
                ambulanceintent.putExtra("ID", "12");

                startActivity(ambulanceintent);
            }
        });

и эта страница, которую я использовать, чтобы показать элемент

public class ShowInformationToUserActivity extends AppCompatActivity
{

    private String CategoryID;
    private String type;
    private Toolbar mToolbar;
    private ListView categorylist;
    DatabaseHelper db;

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

        CategoryID = getIntent().getExtras().get("ID").toString();

        mToolbar = (Toolbar) findViewById(R.id.main_page_toolbar);
        setSupportActionBar(mToolbar);
        getSupportActionBar().setTitle("Information");

        categorylist = findViewById(R.id.categorylist);
        db = new DatabaseHelper(this);

        Toast.makeText(this, CategoryID , Toast.LENGTH_SHORT).show();

    }

    @Override
    protected void onResume()
    {
        super.onResume();

        ArrayList<CatygoryInformation> catygoryInformations = db.DisplaySpecificItem(Integer.valueOf(CategoryID));

        CategoryAdapter categoryAdapter = new CategoryAdapter(this, R.layout.item_category, catygoryInformations);

        categorylist.setAdapter(categoryAdapter);
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...