私は自分のアプリに を持っています。画面に表示さGridView
れるまではうまくいきます。scroll
これを行うと、次のアイテムを持っている間、アップしているアイテムが変化し続けます。最後のアイテムがgridview
来ると、すべてのアイテムが彼に変換されます。(下手な英語でごめんなさい)
私はリストoアイテムを持っていますsqlite
、私ImageAdapter
はこれです(Image + text
layout.xmlから)
public class ImageAdapter extends BaseAdapter{
private Context mContext;
private int nSonidos;
private Cursor sonidoscursor;
private int sonidoactual;
public ImageAdapter(Context c){
mContext = c;
sonidoscursor = dbr.rawQuery(" SELECT id FROM sonidos order by nombre", null);
if(sonidoscursor.getCount()>0){
nSonidos = sonidoscursor.getCount();
}else{
nSonidos = 0;
}
if (sonidoscursor.moveToFirst()) {
sonidoactual = sonidoscursor.getInt(0);
sonidoscursor.moveToNext();
}
}
@Override
public int getCount() {return nSonidos;}
@Override
public Object getItem(int arg0) {return null;}
@Override
public long getItemId(int arg0) {return 0;}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View v;
if(convertView==null){
LayoutInflater li = getLayoutInflater();
v = li.inflate(R.layout.icon, null);
}else{
v = convertView;
}
TextView tv = (TextView)v.findViewById(R.id.icon_text);
tv.setText(getNombre(sonidoactual, "sonidos"));
try{
sonidoactual = sonidoscursor.getInt(0);
sonidoscursor.moveToNext();
}catch(CursorIndexOutOfBoundsException e){
e.printStackTrace();
}
ImageView iv = (ImageView)v.findViewById(R.id.icon_image);
iv.setImageResource(R.drawable.ic_launcher);
return v;
}
}
テーブルの項目ごとに項目がありますgetView
が、問題はこれをスクロールするときです。これについて5つの問題をさらに読みましたが、どれもうまくいきません。:S
私のget nombreメソッド:
public String getNombre(int indice, String tipo){
Cursor c = dbr.rawQuery(" SELECT nombre FROM "+tipo+" WHERE id="+indice, null);
String nombre = "";
if (c.moveToFirst()) {
nombre=c.getString(0);
}
return nombre;
}
Gridview
簡単です:
<GridView
android:id="@+id/gridtodos"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:horizontalSpacing="10sp"
android:numColumns="3"
android:verticalSpacing="10sp" >
</GridView>
本当に助けが必要です。多くのオプションを試してみましたが、何もしませんでした。ありがとう :)