I am trying to make a app using list view and database .But my app is getting error every time i want to compile it .My code are below :
MainActivity.java
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
FixtureAdapter adapter;
DatabaseClass db=new DatabaseClass(this);
db.addFixture(new Fixture("Bangladesh","Australis","Melborne","22 feb 2014"));
db.addFixture(new Fixture("India","Pakistan","Sydney","15 feb 2014"));
ArrayList<Fixture> fx= db.getAllContacts();
adapter = new FixtureAdapter(this,
fx);
ListView dataList = (ListView) findViewById(R.id.list);
dataList.setAdapter(adapter);
}
}
adapter calss:
public class FixtureAdapter extends ArrayAdapter<Fixture> {
Activity context;
int layoutResourceId;
ArrayList<Fixture> data=new ArrayList<Fixture>();
/*public FixtureAdapter(Context context , int layoutResourceId, ArrayList<Fixture> data) {
super(context, layoutResourceId, data);
this.layoutResourceId = layoutResourceId;
this.context = (Activity)context;
this.data = data;
}*/
public FixtureAdapter(Context context , ArrayList<Fixture> data) {
super(context, R.layout.fixture, data);
this.context = (Activity)context;
this.data = data;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View row = null;
if(convertView == null)
{
LayoutInflater inflater = (LayoutInflater)context.getLayoutInflater();
row = inflater.inflate( R.layout.fixture,null);
TextView teamone=(TextView)row.findViewById(R.id.teamOneName);
TextView teamtwo=(TextView)row.findViewById(R.id.teamTwoName);
TextView vs=(TextView)row.findViewById(R.id.vs);
TextView venue=(TextView)row.findViewById(R.id.venue);
TextView date=(TextView)row.findViewById(R.id.date);
ImageView teamoneimg = (ImageView) row.findViewById(R.id.teamOneImg);
ImageView teamtwoimg = (ImageView) row.findViewById(R.id.teamTwoImg);
Fixture f=data.get(position);
teamone.setText(f.getTeamOne());
teamtwo.setText(f.getTeamTwo());
vs.setText("Vs");
venue.setText(f.getVenue());
date.setText(f.getDateInt());
if(teamone.getText().toString()=="Bangladesh")
{
teamoneimg.setImageResource(R.drawable.fb);
}
else
{
teamoneimg.setImageResource(R.drawable.ic_launcher);
teamtwoimg.setImageResource(R.drawable.ic_launcher);
}
}
return row;
}
}
Xml files:
main.xml `
<ListView
android:id="@+id/list"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
</ListView>
</LinearLayout>`
fixture.xml
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_marginLeft="18dp"
android:layout_marginTop="27dp"
android:orientation="vertical"
>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="2"
android:orientation="horizontal" >
<!-- first team and name -->
<LinearLayout
android:layout_height="match_parent"
android:layout_weight="2"
android:orientation="vertical" >
<ImageView
android:id="@+id/teamOneImg"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/abc_ab_bottom_solid_dark_holo" />
<TextView
android:id="@+id/teamOneName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="15dp"
android:text="team 1" />
</LinearLayout>
<!-- vs -->
<LinearLayout
android:layout_height="match_parent"
android:orientation="vertical"
android:layout_weight="1" >
<TextView
android:id="@+id/vs"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Vs"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:paddingTop="15dp"
/>
</LinearLayout>
<!-- second team and name -->
<LinearLayout
android:layout_height="match_parent"
android:orientation="vertical"
android:layout_weight="2" >
<ImageView
android:id="@+id/teamTwoImg"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/abc_ab_bottom_solid_dark_holo" />
<TextView
android:id="@+id/teamTwoName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="15dp"
android:text="Team two" />
</LinearLayout>
<!-- venue and date -->
<LinearLayout
android:layout_height="match_parent"
android:orientation="vertical"
android:layout_weight="2" >
<TextView
android:id="@+id/venue"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Venue" />
<TextView
android:id="@+id/date"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="15dp"
android:text="Date and time" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
I have check the database class it has no problem .I think the problem is with the adapter class But i fail to identify it .Please help me out to fix it .
No comments:
Post a Comment