Android ListView适配器和ArrayAdapter
首先,我是一个编程高手,我想做一些事情,比如当用户选择Clear_data(清除数据)时,让他/她执行清除数据活动 我遇到了try-and-catch的问题,因为我仍然有点迷失在常规编程中。当我测试它时,我选择了第一个选项,即文本颜色,它打开了清除数据活动,而不是文本颜色 代码如下:Android ListView适配器和ArrayAdapter,android,string,listview,android-arrayadapter,listadapter,Android,String,Listview,Android Arrayadapter,Listadapter,首先,我是一个编程高手,我想做一些事情,比如当用户选择Clear_data(清除数据)时,让他/她执行清除数据活动 我遇到了try-and-catch的问题,因为我仍然有点迷失在常规编程中。当我测试它时,我选择了第一个选项,即文本颜色,它打开了清除数据活动,而不是文本颜色 代码如下: public class Settings extends ListActivity { String classes[] = { "Text_Colour", "Clear_data", "Contact D
public class Settings extends ListActivity {
String classes[] = { "Text_Colour", "Clear_data", "Contact Developer" };
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setListAdapter(new ArrayAdapter<String>(Settings.this, android.R.layout.simple_list_item_1, classes));
}
@Override
protected void onListItemClick(ListView l, View v, int position, long id) {
// TODO Auto-generated method stub
super.onListItemClick(l, v, position, id);
String colours = classes[0];
String cdata = classes[1];
try {
Class Class1 = Class.forName("com.example.test1." + colours);
Intent intent1 = new Intent(Settings.this, Class1);
startActivity(intent1);
}catch(ClassNotFoundException e) {
e.printStackTrace();
}
try {
Class Class2 = Class.forName("com.example.test1." + cdata);
Intent intent2 = new Intent(Settings.this, Class2);
startActivity(intent2);
}
catch(ClassNotFoundException d) {
d.printStackTrace();
}
}
公共类设置扩展ListActivity{
字符串类[]={“文本颜色”、“清除数据”、“联系开发人员”};
@凌驾
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setListAdapter(新的ArrayAdapter(Settings.this,android.R.layout.simple_list_item_1,classes));
}
@凌驾
受保护的void onListItemClick(列表视图l、视图v、整数位置、长id){
//TODO自动生成的方法存根
super.onListItemClick(左、右、位置、id);
字符串颜色=类别[0];
字符串cdata=classes[1];
试一试{
Class Class1=Class.forName(“com.example.test1.”+colors);
意向意向1=新意向(Settings.this,Class1);
星触觉(intent1);
}catch(classnotfounde异常){
e、 printStackTrace();
}
试一试{
Class Class2=Class.forName(“com.example.test1.+cdata”);
意向意向2=新意向(Settings.this,Class2);
星触觉(intent2);
}
捕获(ClassNotFoundException d){
d、 printStackTrace();
}
}
感谢各位抽出时间。您可能需要添加一个如下的交换机操作员:
@Override
protected void onListItemClick(ListView l, View v, int position, long id) {
// TODO Auto-generated method stub
super.onListItemClick(l, v, position, id);
String colours = classes[0];
String cdata = classes[1];
switch(position){
case 0:
try {
Class Class1 = Class.forName("com.example.test1." + colours);
Intent intent1 = new Intent(Settings.this, Class1);
startActivity(intent1);
}catch(ClassNotFoundException e) {
e.printStackTrace();
}
break;
case 1:
try {
Class Class2 = Class.forName("com.example.test1." + cdata);
Intent intent2 = new Intent(Settings.this, Class2);
startActivity(intent2);
}
catch(ClassNotFoundException d) {
d.printStackTrace();
}
break;
}
}
@Ket不客气。如果答案有帮助,请接受;)