saso_008
جمعه 01 اسفند 1393, 13:52 عصر
با سلام
من یک listViewCustom دارم که وقتی کلیک میکنم روی ایتماش به اکتیویتی جدیدی که ایجاد کردم نمیره و ارور میده چکار باید کنم ایا کد کلیک رو اشتباه وارد کردم
لطفا راهنمایی کنید.
import android.app.ListActivity;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;
public class ListtActivity extends ListActivity {
String[] listt;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.listt);
setListAdapter(new MyAdapter(this,
android.R.layout.simple_list_item_1,
R.id.textView1, getResources().getStringArray(R.array.list)));
}
@Override
protected void onListItemClick(
ListView l, View v, int position, long id) {
super.onListItemClick(l, v, position, id);
Toast.makeText(this,listt [position]+":ra entekhab konid",
Toast.LENGTH_SHORT).show();
switch(position){
case 0:
startActivity(new Intent(ListtActivity.this, oneActivity.class));
break;
case 1:
startActivity(new Intent(ListtActivity.this,twoActivity.class));
break;
case 2:
startActivity(new Intent(ListtActivity.this, threeActivity.class));
break;
case 3:
startActivity(new Intent(ListtActivity.this, fourActivity.class));
default:
break;
}
}
public class MyAdapter extends ArrayAdapter<String>{
public MyAdapter(Context context, int resource, int textViewResourceId,
String[] strings) {
super(context, resource, textViewResourceId, strings);
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
LayoutInflater inflater =(LayoutInflater) getSystemService(Context.
LAYOUT_INFLATER_SERVICE);
View row = inflater.inflate(R.layout.list_custom,
parent, false);
String[] items = getResources().getStringArray(R.array.list);
ImageView iv = (ImageView) row.findViewById(R.id.imageView1);
TextView tv = (TextView) row.findViewById(R.id.textView1);
tv.setText(items[position]);
if(items[position].equals("one")){
iv.setImageResource(R.drawable.one);
}
else if(items[position].equals("two")){
iv.setImageResource(R.drawable.two);
}
else if(items[position].equals("three")){
iv.setImageResource(R.drawable.three);
}
else if(items[position].equals("four")){
iv.setImageResource(R.drawable.four);
}
return row;
}
}
}
من یک listViewCustom دارم که وقتی کلیک میکنم روی ایتماش به اکتیویتی جدیدی که ایجاد کردم نمیره و ارور میده چکار باید کنم ایا کد کلیک رو اشتباه وارد کردم
لطفا راهنمایی کنید.
import android.app.ListActivity;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;
public class ListtActivity extends ListActivity {
String[] listt;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.listt);
setListAdapter(new MyAdapter(this,
android.R.layout.simple_list_item_1,
R.id.textView1, getResources().getStringArray(R.array.list)));
}
@Override
protected void onListItemClick(
ListView l, View v, int position, long id) {
super.onListItemClick(l, v, position, id);
Toast.makeText(this,listt [position]+":ra entekhab konid",
Toast.LENGTH_SHORT).show();
switch(position){
case 0:
startActivity(new Intent(ListtActivity.this, oneActivity.class));
break;
case 1:
startActivity(new Intent(ListtActivity.this,twoActivity.class));
break;
case 2:
startActivity(new Intent(ListtActivity.this, threeActivity.class));
break;
case 3:
startActivity(new Intent(ListtActivity.this, fourActivity.class));
default:
break;
}
}
public class MyAdapter extends ArrayAdapter<String>{
public MyAdapter(Context context, int resource, int textViewResourceId,
String[] strings) {
super(context, resource, textViewResourceId, strings);
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
LayoutInflater inflater =(LayoutInflater) getSystemService(Context.
LAYOUT_INFLATER_SERVICE);
View row = inflater.inflate(R.layout.list_custom,
parent, false);
String[] items = getResources().getStringArray(R.array.list);
ImageView iv = (ImageView) row.findViewById(R.id.imageView1);
TextView tv = (TextView) row.findViewById(R.id.textView1);
tv.setText(items[position]);
if(items[position].equals("one")){
iv.setImageResource(R.drawable.one);
}
else if(items[position].equals("two")){
iv.setImageResource(R.drawable.two);
}
else if(items[position].equals("three")){
iv.setImageResource(R.drawable.three);
}
else if(items[position].equals("four")){
iv.setImageResource(R.drawable.four);
}
return row;
}
}
}