2014-12-24 3 views
0

Я написал простую программу для GridView, и у меня есть проблема с переменной Counter.baseAdapter в android и раздуйте различные макеты

когда я использую pos_word[counter] это не работает, но когда я использую номер в нем, его работы. например pos_word[1] Я хочу написать адаптер для раздувания различной компоновки в gridView.

Можете ли вы помочь понять это

package com.example.crossword; 

import android.content.Context; 
import android.view.LayoutInflater; 
import android.view.View; 
import android.view.ViewGroup; 
import android.widget.BaseAdapter; 
import android.widget.ListAdapter; 
import android.widget.TextView; 

public class CrossWord_Adapter extends BaseAdapter implements ListAdapter { 

    LayoutInflater inflater; 
    public int length = 9; 
    public int[] pos_word = {0,3,4,5,6}; 
    public int counter = 0; 

    public CrossWord_Adapter(Context context) //difination -------| 
    { 
     inflater = LayoutInflater.from(context); 
    } 

    @Override 
    public int getCount() { 
     // TODO Auto-generated method stub 
     return length; 
    } 

    @Override 
    public Object getItem(int position) { 
     // TODO Auto-generated method stub 
     return position; 
    } 

    @Override 
    public long getItemId(int position) { 
     // TODO Auto-generated method stub 
     return position; 
    } 

    @Override 
    public View getView(int position, View convertView, ViewGroup parent) { 

     holder layoutHolder; 

     if(position == pos_word[counter]) 
      { 
       convertView = inflater.inflate(R.layout.layout_word, null); 
       layoutHolder = new holder(); 
       layoutHolder.word = (TextView) convertView.findViewById(R.id.text_word); 
       convertView.setTag(layoutHolder); 
       if(counter < pos_word.length) 
       { 
        counter++; 
       } 
      } 
     else 
      { 
       convertView = inflater.inflate(R.layout.layout_hashur, null); 
      } 

     return convertView; 
    } 

    class holder 
    { 
     TextView word; 
    } 

} 

ответ

0

length является 9. и pos_word.length 5.

изменение

if(counter < length) 

в

if(counter < pos_word.length-1) 
+0

Ой, извините, когда я беру какой-то тест, чтобы найти проблему, я сделал эту ошибку, я изменил ее, но не работает снова !!!! –

+0

что результат? свернуть его? –

+0

да, это крушение! :( –