Czy ktos moglby wytlumaczyc mi ten kod:
(ale nie ogolnie, bardzo prosze :) )
Data provider:
public class DataProvider {
private String polish;
private String english;
public DataProvider(String polish,String english)
{
this.polish=polish;
this.english=english;
}
public String getPolish() {
return polish;
}
public String getEnglish() {
return english;
}
public void setEnglish(String english) {
this.english = english;
}
public void setPolish(String polish) {
this.polish = polish;
}
}
(zrozumiale)
DbHelper (zrozumiale, pokazane zeby bylo wiadomo o ckman)
public Cursor getInformation(SQLiteDatabase db)
{
Cursor cur;
String[] projection = {"english","polish"};
cur = db.query("Tabelka",projection,null,null,null,null,null);
return cur;
}
// ListDataAdapter: (brak zrozumienia)
public class ListDataAdapter extends ArrayAdapter {
List list = new ArrayList<>();
public ListDataAdapter(Context context, int resource) {
super(context, resource);
}
static class LayoutHandler
{
TextView POLISH,ENGLISH;
}
@Override
public void add(Object object) {
super.add(object);
list.add(object);
}
@Override
public int getCount() {
return list.size();
}
@Override
public Object getItem(int position) {
return list.get(position);
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View row = convertView;
LayoutHandler handler;
if (row==null)
{
LayoutInflater inflater = (LayoutInflater)this.getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
row= inflater.inflate(R.layout.row_layout,parent,false);
handler = new LayoutHandler();
handler.ENGLISH=(TextView) row.findViewById(R.id.englishTV);
handler.POLISH = (TextView) row.findViewById(R.id.polishTV);
row.setTag(handler);
}
else
{
handler =(LayoutHandler) row.getTag();
}
DataProvider provider = (DataProvider) this.getItem(position);
handler.ENGLISH.setText(provider.getEnglish());
handler.POLISH.setText(provider.getPolish());
return row;
}
Main activity, czesciowo:
if (cursor.moveToFirst()) // if inf, return true
{
do
{
String english,polish;
english = cursor.getString(0);
polish = cursor.getString(1);
DataProvider provider = new DataProvider(english,polish);
lda.add(provider);
}
while (cursor.moveToNext());
}