Programación y Desarrollo para Android Subforo exclusivo para temas de programación de software para PDAs y desarrollo de aplicaciones, interfaces, etc bajo Android

Respuesta
 
Herramientas
  #1  
Viejo 13/05/15, 13:26:01
Array

[xs_avatar]
kohario88 kohario88 no está en línea
Miembro del foro
 
Fecha de registro: abr 2015
Mensajes: 79
Tu operador: Movistar

Sqlite y listview personalizadas

Buenos dias.
Estoy teniendo un problema a la hora de cargar una list view personalizada desde una bd de sqlite. La bd esta bien creada y me permite introducir peliculas. El problema viene al mostrarlas. Igual es que he puesto algo mal. Os agradeceria si pudierais indicarme el que. Os paso Los metodos que conlleva:


Clase TodasPelis
(Click para mostrar/ocultar)

public class TodasPelis extends ActionBarActivity {
private ListView lista;

private ArrayList<ControlItems> Items;
private AdaptadorLista Adaptador;


@override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.listapersonalizada);

lista = (ListView)findViewById(R.id.lista);


loadItems();
}


@override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu_todas_pelis, menu);
return true;
}

@override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();

//noinspection SimplifiableIfStatement
if (id == R.id.action_settings) {
return true;
}

return super.onOptionsItemSelected(item);
}

private void loadItems() {
AdminSQLiteOpenHelper admin = new AdminSQLiteOpenHelper(this,
"administracion", null, 1);
SQLiteDatabase bd = admin.getWritableDatabase();
Cursor fila = bd.rawQuery(
"select Titulo,Nota from Peliculas", null);
if (fila.moveToFirst()){
Items = new ArrayList<ControlItems>();
{
Items.add(new ControlItems(fila.getString(0), fila.getInt(1)));


lista.setAdapter(Adaptador);
while (fila.moveToNext()) {
Items.add(new ControlItems(fila.getString(0), fila.getInt(1)));
}

Adaptador = new AdaptadorLista(this, Items);
}
} else
Toast.makeText(this, "No hay peliculas",
Toast.LENGTH_SHORT).show();
bd.close();



Adaptador = new AdaptadorLista(this, Items);

lista.setAdapter(Adaptador);
}
}




ControlItems
(Click para mostrar/ocultar)
public class ControlItems {

String title;
RatingBar star;


public ControlItems(){}

public ControlItems(String titulo, int stars){
this.title = titulo;
this.star.setNumStars(stars);

}
// Aqui inicia el GET y el SET para cada propiedad de la clase
public String getTitle() { return title; }
public void setTitle(String titulo) { this.title = titulo; }
public int getStar(){ return star.getNumStars(); }
public void setStar(int stars){ this.star.setNumStars(stars);}
}





Adaptador Lista
(Click para mostrar/ocultar)
public class AdaptadorLista extends BaseAdapter{

private Activity activity;
private ArrayList<ControlItems> arrayItems;
public AdaptadorLista(Activity activity, ArrayList<ControlItems> listaItems){
super();
this.activity = activity;
this.arrayItems = new ArrayList<ControlItems>(listaItems);
}

@override
public int getCount() {
return arrayItems.size();
}

@override
public Object getItem(int position) {
return arrayItems.get(position);
}

@override
public long getItemId(int position) {
return position;
}

public static class Fila
{
TextView titulo;
RatingBar estrella;

}

@override
public View getView(int position, View convertView, ViewGroup parent) {
Fila view = new Fila();
LayoutInflater inflator = activity.getLayoutInflater();
ControlItems itm = arrayItems.get(position);

if(convertView==null)
{
convertView = inflator.inflate(R.layout.item, parent, false);
view.titulo = (TextView) convertView.findViewById(R.id.Titulo);

view.estrella=(RatingBar) convertView.findViewById(R.id.Estrella);

convertView.setTag(view);
}
else
{
view = (Fila)convertView.getTag();
}

view.titulo.setText(itm.getTitle());
view.estrella.setNumStars(itm.getStar());


return convertView;
}

}
Responder Con Cita


Respuesta

Estás aquí
Regresar   Portal | Indice > Todo sobre Android > Programación y Desarrollo para Android



Hora actual: 03:23:14 (GMT +2)



User Alert System provided by Advanced User Tagging (Lite) - vBulletin Mods & Addons Copyright © 2024 DragonByte Technologies Ltd.

Contactar por correo / Contact by mail / 邮件联系 /