Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/220.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 单击列表视图中的特定项_Java_Android_Listview_Onclick_Onitemclicklistener - Fatal编程技术网

Java 单击列表视图中的特定项

Java 单击列表视图中的特定项,java,android,listview,onclick,onitemclicklistener,Java,Android,Listview,Onclick,Onitemclicklistener,我正在尝试为ListView中的特定项创建一个侦听器。 有了这段代码,监听器会对每个项目做出反应,但我只希望它对列表中的一个项目(字体大小)做出反应 String[]listItems={“颜色”、“字体大小”,}; ListView lv=(ListView)findViewById(R.id.settings\u列表); 低压设置适配器(新阵列适配器 (这是android.R.layout.simple_list_item_1,listItems)); lv.setOnItemClickLi

我正在尝试为ListView中的特定项创建一个侦听器。 有了这段代码,监听器会对每个项目做出反应,但我只希望它对列表中的一个项目(字体大小)做出反应

String[]listItems={“颜色”、“字体大小”,};
ListView lv=(ListView)findViewById(R.id.settings\u列表);
低压设置适配器(新阵列适配器
(这是android.R.layout.simple_list_item_1,listItems));
lv.setOnItemClickListener(新的OnItemClickListener()
{
public void onItemClick(AdapterView父对象、视图、整型位置、长id)
{
Context=getApplicationContext();
CharSequence text=“单击”;
int duration=Toast.LENGTH\u SHORT;
Toast Toast=Toast.makeText(上下文、文本、持续时间);
toast.show();
}
});
我如何做到这一点

提前感谢

试试这个:

 String[] listItems = {"Colour", "Font Size",};
 ListView lv = (ListView) findViewById(R.id.settings_list);

 lv.setAdapter(new ArrayAdapter<String>
 (this, android.R.layout.simple_list_item_1, listItems));

 lv.setOnItemClickListener(new OnItemClickListener()
 {
  public void onItemClick(AdapterView<?> parent, View view, int position, long id)
    {
        if(listItems[position].equlas("Font Size"))
        {
          Context context = getApplicationContext();
          CharSequence text = "Clicked";
          int duration = Toast.LENGTH_SHORT;

          Toast toast = Toast.makeText(context, text, duration);
          toast.show();
        }
});
String[]listItems={“颜色”、“字体大小”,};
ListView lv=(ListView)findViewById(R.id.settings\u列表);
低压设置适配器(新阵列适配器
(这是android.R.layout.simple_list_item_1,listItems));
lv.setOnItemClickListener(新的OnItemClickListener()
{
public void onItemClick(AdapterView父对象、视图、整型位置、长id)
{
if(列表项[位置].equalas(“字体大小”))
{
Context=getApplicationContext();
CharSequence text=“单击”;
int duration=Toast.LENGTH\u SHORT;
Toast Toast=Toast.makeText(上下文、文本、持续时间);
toast.show();
}
});

这看起来很有希望,但是eclipse说:不能在用不同方法定义的内部类中引用非最终变量listItems。如何解决这个问题?将listItems声明为:
code
final String[]listItems={“color”,“Font Size”,“};
code
,在第一行。
 String[] listItems = {"Colour", "Font Size",};
 ListView lv = (ListView) findViewById(R.id.settings_list);

 lv.setAdapter(new ArrayAdapter<String>
 (this, android.R.layout.simple_list_item_1, listItems));

 lv.setOnItemClickListener(new OnItemClickListener()
 {
  public void onItemClick(AdapterView<?> parent, View view, int position, long id)
    {
        if(listItems[position].equlas("Font Size"))
        {
          Context context = getApplicationContext();
          CharSequence text = "Clicked";
          int duration = Toast.LENGTH_SHORT;

          Toast toast = Toast.makeText(context, text, duration);
          toast.show();
        }
});