Plusieurs question AndroidStudio/Java

Fermé
P53ud0 Messages postés 24 Date d'inscription dimanche 30 octobre 2016 Statut Membre Dernière intervention 14 avril 2018 - 12 mars 2017 à 12:04
P53ud0 Messages postés 24 Date d'inscription dimanche 30 octobre 2016 Statut Membre Dernière intervention 14 avril 2018 - 13 mars 2017 à 19:54
Bonjour,

Donc, j'ai plusieurs question sur la programmation en JAVA sur android studio,
Je tiens a préciser que cela fais que 2 mois que je Développe en Java sous android donc je peux voir je fais encore beaucoup d'erreurs.
Je vais vous expliquer mon projet puis je vais poser mes questions. Je veux créer une applications sous android qui sera du même style que https://dbz.space/ ou https://dbz-dokkanbattle.fandom.com/wiki/Dragon_Ball_Z_Dokkan_Battle_Wikia ( donc regrouper certains données utiles )

Donc ma première question:
Peut on créer et utiliser un JSON sous android studio sans que le JSON soit heberger en ligne, en gros je veux savoir si je peux créer un JSON dans android studio et l'utiliser, si oui ou et comment je l'utilise ? J'ai lu qu"on pouvais utiliser un fichier XML, mais lorsque j'essaie de faire un XML dans un dossier values que j'ai créer, bah ma première balise a une erreur: "Element (personne) must be declared )"

Deuxième question j'ai un soucis avec RecyclerView et je ne sais pas si cela viens de chez moi ou si cela est normal, je m'explique, lorsque je descend sur mon layout qui comporte 21 items et bah sa me fais 1er item: 0 ( normal ) 2eme: 1, 3eme: 2.... jusqu’au 10eme item qui change de numéro sans cesse des que je descend ou je monte. Image:
http://image.noelshack.com/fichiers/2017/10/1489316605-17270356-1349254101780394-240512666-n.png

http://image.noelshack.com/fichiers/2017/10/1489316605-17238825-1349254125113725-1920601819-n.png

http://image.noelshack.com/fichiers/2017/10/1489316605-17270824-1349254165113721-884743217-n.png



A voir également:

2 réponses

BunoCS Messages postés 15476 Date d'inscription lundi 11 juillet 2005 Statut Modérateur Dernière intervention 3 mai 2024 3 898
13 mars 2017 à 09:34
Hello,

Pour la 1ère question, merci de rester dans la discussion déjà ouverte.

Pour la seconde, difficile de t'aider sans code. Un problème de recyclage? Comment créés-tu tes cellules?
0
P53ud0 Messages postés 24 Date d'inscription dimanche 30 octobre 2016 Statut Membre Dernière intervention 14 avril 2018
Modifié par P53ud0 le 13/03/2017 à 19:57
Alors pour mon RecyclerView j'utilisais une List dans la quelle j'avais 21 nom de Quêtes et c'est dedans que je pioche les Stirings, j'utilise un array parce que je ne peux savoir si ils vont rajouter un jour des quetes ou pas.
package com.example.artur.myapplication.dokkan_battle.dokkan_battle_activity;

import android.content.Intent;
import android.support.v7.widget.RecyclerView;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;

import com.example.artur.myapplication.R;

import java.util.ArrayList;
import java.util.List;


public class DB_Select_Quest_Adapter extends RecyclerView.Adapter<DB_Select_Quest_Adapter.MyViewHolder> {

    private ImageView area;
    private TextView numereo;
    private RecyclerView layout_quest;

    private int positionItem;

/** Message pour CCM: J'utilise ici return 21 et non pas l'array comme j'ai indiquer plus haut car je faisais des tests pour voir si cela fonctionne **/

    @Override
    public int getItemCount() {
        return 21;
    }

    @Override
    public MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
        LayoutInflater inflater = LayoutInflater.from(parent.getContext());
        View view = inflater.inflate(R.layout.db_quest_recycler_model_layout, parent, false);
        return new MyViewHolder(view);
    }

    @Override
    public void onBindViewHolder(MyViewHolder holder, int position) {
        Log.i("", String.valueOf(position));
        holder.display(position);
    }

    public int getPositionItem() {
        return positionItem;
    }

    public void setPositionItem(int positionItem) {
        this.positionItem = positionItem;
    }


    public class MyViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener {


        public MyViewHolder(final View itemView) {
            super(itemView);
            area = (ImageView)itemView.findViewById(R.id.imageArea);
            numereo = (TextView)itemView.findViewById(R.id.numero);
            numereo.setOnClickListener(this);

        }

        public void display(int position) {
            String pos = String.valueOf(position);
            numereo.setText(pos);
        }

        @Override
        public void onClick(View v) {
            setPositionItem(getAdapterPosition());
            int nbrPosition = getPositionItem();
            Intent intent = new Intent(v.getContext(), DB_Selected_Quest_Activity.class);
            intent.putExtra("nbr", nbrPosition);
            v.getContext().startActivity(intent);
        }
    }
}


Je ne sais pas ce que je peux expliquer dans ce code ou si vous arriverai a comprendre comme sa, si non dite moi quel partie vous voulez que j'explique et je le ferais :)
J'ai essayer de suivre le fonctionnement avec le mode "debuger" de l'android studio et je n'arrive pas a trouver, je me suis un peu renseigner de mon coter donc je ferai des tests tout a l'heure, si je n'actualise pas cette discussion c'est que j'ai pas trouver.

Ce qui est bizzare deplus c'est que les 21 items du recyclerview ont bien leur n°index, le soucis etant que le contenu bug sur l'index 10 et repart a zero sur le 11
0