Comment faire customAdapter remplir gridview hauteur
Je suis en train de travailler sur Sudoku app. La mise en page est 9x9 GridView. Chaque GridView: 9 Textviews par customAdapter. Je veux faire de la 9 TextViews pour remplir la hauteur de chaque GridView. Comment?
C'est ce que je vais avoir maintenant
Ici est myGridAdapter:
public class myGridAdapter extends BaseAdapter {
private Context context;
private String[] mobileValues;
public myGridAdapter(MainActivity mainActivity, String[] arrayEmpty) {
this.context = mainActivity;
this.mobileValues = arrayEmpty;
}
public View getView(int position, View convertView, ViewGroup parent) {
LayoutInflater inflater = (LayoutInflater) context
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View gridView;
if (convertView == null) {
gridView = new View(context);
//get layout from text_item.xml
gridView = inflater.inflate(R.layout.text_item, null);
//set value into textview
TextView textView = (TextView) gridView
.findViewById(R.id.grid_item_label);
textView.setText(mobileValues[position]);
} else {
gridView = (View) convertView;
}
return gridView;
}
.....
}
C'est le XML pour chaque élément de texte
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="fill_parent"
android:gravity="center"
android:orientation="vertical" >
<TextView
android:id="@+id/grid_item_label"
android:layout_width="match_parent"
android:layout_height="fill_parent"
android:background="@drawable/cell_shape"
android:text="@string/_1"
tools:ignore="InefficientWeight"
android:textSize="12sp" >
</TextView>
</LinearLayout>
C'est la forme pour chaque TextView
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools">
<solid android:color="#FFFFFF"/>
<stroke android:width="1dp" android:color="#777777" />
</shape>
Je veux que mon Gridview pour être comme celui-ci
Après l'application de la première réponse de bakriOnFire
qu'est-ce que le LayoutParams de votre GridView..vha u définir sa largeur et sa hauteur de match_parent?
Je n'ai pas modifier LayoutParams de la programmation, j'ai seulement compter sur les Paramètres dans le fichier XML
oui..l'hépatite a u définir sa largeur et sa hauteur de match_parent de GridView en xml..
Qui XML fiel exaclty et l'Élément sur lequel vous voulez me faire modifier la hauteur et la largeur ? @bakriOnFire
Le contrôle Gridview déjà Remplir le parent à cause de sa couleur de fond (gris Foncé), est d'étirement à la fin, comme vous pouvez le voir. Le gris est la couleur de fond pour le outter mise en page
Je n'ai pas modifier LayoutParams de la programmation, j'ai seulement compter sur les Paramètres dans le fichier XML
oui..l'hépatite a u définir sa largeur et sa hauteur de match_parent de GridView en xml..
Qui XML fiel exaclty et l'Élément sur lequel vous voulez me faire modifier la hauteur et la largeur ? @bakriOnFire
Le contrôle Gridview déjà Remplir le parent à cause de sa couleur de fond (gris Foncé), est d'étirement à la fin, comme vous pouvez le voir. Le gris est la couleur de fond pour le outter mise en page
OriginalL'auteur Sami Eltamawy | 2013-05-06
Vous devez vous connecter pour publier un commentaire.
Vous pouvez régler la hauteur de chaque LinearLayout de TextView que vous gonfler dans votre GridView l'adaptateur pour screenHeight/3.
Dans getView après avoir gonflé le textView xml, la fonte de la gonflés vue de LinearLayout et réglez sa hauteur:
Modifier
activity_main.xml
text_item.xml
MainActivity.java
Dans le getView ce que j'ai fait c'est que j'ai gonflé le text_item.xml pour 9x9 fois, dans lequel j'ai défini dynamiquement la hauteur de présentation de text_item à screenHeight/9.
Laissez-moi savoir si cela fonctionne pour vous ou pas.
Edit 2
activity_main.xml
text_item.xml
whts le problème?
permettez-moi de voir si je peux faire quelque chose avec votre code..laissera u sais que si je viens avec quelque chose.
changement activity_main.xml et text_item.xml comme dans mon Edit 2..vous obtiendrez les frontières.
je ne vois pas d'attachement...les lignes int screenHeight = ((Activité) contexte).getWindowManager() .getDefaultDisplay().getHeight(); gridView.setLayoutParams(nouveau GridView.LayoutParams(GridView.LayoutParams.MATCH_PARENT, screenHeight/9)); strech les cellules de la grille afin de remplir l'écran..j'ai vérifié moi-même...r vous faites quelque chose de mal..juste chk..
OriginalL'auteur bakriOnFire
Vous pouvez obtenir de l'appareil en hauteur largeur et de 3 ligne n col diviser par 3 à la fois et ensemble programmtically hauteur largeur peut résoudre votre problème.
dans getView où u r gonflage.u r la génération neuf vue nommée gridView dans ur de la classe.je parle de xml pour chaque élément.selon votre code u peut faire comme ceci gridView.setLayoutParams(nouveau LinearLayout.LayoutParams(largeur,hauteur));
OriginalL'auteur Manmohan
Essayer ce Code
Cela peut aider u
OriginalL'auteur Joy Helina
Veuillez jeter un oeil à cet open source de l'échantillon pour soduku.
http://code.google.com/p/opensudoku-android/
Cela va vous aider à attirer l'9 X9 grdiview.
Salut, ce code.
salut vous avez un oeil à cette idée. code.google.com/p/starsudoku/source/browse/trunk/StarSudoku/res/...
OriginalL'auteur itsrajesh4uguys
Depuis GridView fonctionne lorsque votre carte est appelée et ne pas avoir une hauteur de propriété pour chaque cellule/enfant, votre meilleure option pourrait être de créer une image de la w/h que vous voulez et de le définir comme textView.SetBackGround...
C'est ce que j'ai utilisé pour mon Sudoku app. C'est sur le play store, merci de consulter l'écran et laissez-moi savoir vos pensées.
Sur le PlayStore - EasySudoku, téléchargement gratuit - http://tinyurl.com/c4qra79
OriginalL'auteur user2347763