Сведем воедино создание списка.

Все 5 файлов.


Здесь приведены коды ранее созданных классов и разметки.







Встречаем все 5 файлов:

Dish.java


DishAdapter.java


BlogspotActivity.java


dish.xml


dishitem.xml


Ниже приведен код каждого из файлов:

Dish.java   (с 1 конструктором, который и будет использован)

package saper.blogspot.namespace;

//Создаем класс Блюдо(Диш)
public class Dish
{
private int icon;
private String title; //название блюда
private String shortDescription; //краткое описание
//private String longDescription; //полное описание
private String mass; //масса на выходе гр/мл
private double price; //цена
  //Коструктор

 Dish(int icon,String title,String shortDescription,double price,String mass)
{
this.icon=icon;
this.title=title;
this.shortDescription=shortDescription;
this.price=price;
this.mass=mass;
}


// методы
public String getInfo()
{
return title;
}
public String getshortDescription()
{
return shortDescription;
}
public String getMass()
{
return mass;
}
public double getPrice()
{
return price;
}

public void setInfo(String title)
{
this.title=title;

}
public void setMass(String mass)
{
this.mass=mass;
}
public void setPrice(double price)
{
this.price=price;
  }

public int getIcon()
{
return icon;
}

public void setIcon(int icon)
{
this.icon = icon;
 }
}



DishAdapter.java

package saper.blogspot.namespace;

import java.util.ArrayList;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;

public class DishAdapter extends BaseAdapter {
private LayoutInflater mLayoutInflater;
private ArrayList<Dish> list;

public DishAdapter (Context ctx,ArrayList<Dish> lst) {
mLayoutInflater = LayoutInflater.from(ctx);
list = lst;
}

public int getCount () {
return list.size();
}

public Object getItem (int position) {
return position;
}

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

public Dish getString (int position) {
return (Dish) list.get(position);
}

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

if (convertView == null)
convertView = mLayoutInflater.inflate(R.layout.dishitem, null);

ImageView icon = (ImageView)convertView.findViewById(R.id.Image);
icon.setImageResource(((Dish) list.get(position)).getIcon());

TextView title = (TextView)convertView.findViewById(R.id.Title);
title.setText(((Dish) list.get(position)).getInfo());

TextView shortDescription = (TextView)convertView.findViewById(R.id.ShortDescription);
shortDescription.setText(((Dish) list.get(position)).getshortDescription());

TextView mass = (TextView)convertView.findViewById(R.id.Mass);
String massa =(((Dish) list.get(position)).getMass());
mass.setText("\tВес:"+"\r"+massa+"\t");

TextView price = (TextView)convertView.findViewById(R.id.Price);
String pric = Double.toString(((Dish) list.get(position)).getPrice());
price.setText("\tЦена:"+"\r"+pric+"р."+"\t");

return convertView;
}
}


BlogspotActivity.java

package saper.blogspot.namespace;

import java.util.ArrayList;
import android.app.ListActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.ListView;

public class BlogspotActivity extends ListActivity {
ArrayList<Dish> list = new ArrayList<Dish>();
//список блюд
  DishAdapter mAdapter;
//адаптер для поля блюда
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.dish);

mAdapter = new DishAdapter(this,list);
setListAdapter(mAdapter);

list.add(new Dish(R.drawable.food003,"Пицца с угрем и гребешком",
"Великолепный коктейль из тигровых креветок," +
" копченого угря и морского гребешка, приправленных " +
"сырами Моцарелла и Пармезан, сливками, красным луком и чесноком. ",
475,"370"));

list.add(new Dish(R.drawable.food004,"Шампиньоны по-французски","Великолепные свежие шампиньоны" +
" в оливковом масле и соке лимона под соевым соусом",220,"250"));
list.add(new Dish(R.drawable.food009,"Нака-нака Йоката-Ва Аната","Вкусное японское ассорти" +
" на листьях салата. Подается соевым соусом, имбирем и васаби .",220,"250"));

}

public void onListItemClick (ListView parent, View v, int position, long id)
  {
  }
}


dish.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/linearLayout1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >

<ListView
android:id="@android:id/list"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true" />

</RelativeLayout>


dishitem.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:orientation="horizontal"

android:padding="5px">

<ImageView
android:id="@+id/Image"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>

<LinearLayout
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:orientation="vertical"
android:paddingLeft="15px">


<TextView
android:id="@+id/Title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="14sp"
android:textStyle="bold"/>

<TextView
android:id="@+id/ShortDescription"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="10sp"
android:textStyle="italic"/>

<LinearLayout
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:orientation="horizontal"
android:paddingLeft="15px">



<TextView
android:id="@+id/Mass"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="12sp"
android:textStyle="italic"/>


<TextView
android:id="@+id/Price"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="12sp"
android:textStyle="italic"/>


</LinearLayout>
</LinearLayout>
</LinearLayout>






Комментариев нет:

Отправить комментарий