ListView onItemClickListener 不做任何事情
ListView onItemClickListener doesnt do anything
我有一个用作选项卡的 ListFragment。我正在尝试在我的 ListView 上使用 OnItemSelectedListener,它必须启动另一个 activity 并根据所选项目在意图中添加特定的额外内容。我正在使用以下代码:
View rootView = inflater.inflate(R.layout.fragment_priority_tab, container, false);
ListView listView = (ListView) rootView.findViewById(android.R.id.list);
List<String> printedList = calculateProportions();
ArrayAdapter<String> expensesAdapter = new ArrayAdapter<>(mContext,
android.R.layout.simple_list_item_1, printedList);
listView.setAdapter(expensesAdapter);
listView.setClickable(true);
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, final int position, long id) {
Intent intent = new Intent(mContext, ListPriority.class);
switch (position) {
case 0:
intent.putExtra("priority", "low");
startActivity(intent);
break;
case 1:
intent.putExtra("priority", "med");
startActivity(intent);
break;
case 2:
intent.putExtra("priority", "high");
startActivity(intent);
break;
case 3:
intent.putExtra("priority", "obsolete");
startActivity(intent);
break;
}
}
});
我没有任何错误或警告,但我的 activity 没有 start.When 我调试了应用程序,我点击了任何项目,我什至没有到达我的断点。
我的 ListView 在 XML 中:
<ListView
android:id="@android:id/list"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
/>
我的java代码在ListFragment的onCreateView中
ListFragment
处理自己的 OnItemClickListener
。不要设置侦听器,而是覆盖 onListItemClick()
在你的javaclass中,你的id声明是错误的:
变化自,
ListView listView = (ListView) rootView.findViewById(android.R.id.list);
到
ListView listView = (ListView) rootView.findViewById(R.id.list);
而你的xml id声明是错误的:
变化自,
<ListView
android:id="@android:id/list"
android:layout_width="fill_parent"
android:layout_height="fill_parent" />
到
<ListView
android:id="@+id/list"
android:layout_width="fill_parent"
android:layout_height="fill_parent" />
我有一个用作选项卡的 ListFragment。我正在尝试在我的 ListView 上使用 OnItemSelectedListener,它必须启动另一个 activity 并根据所选项目在意图中添加特定的额外内容。我正在使用以下代码:
View rootView = inflater.inflate(R.layout.fragment_priority_tab, container, false);
ListView listView = (ListView) rootView.findViewById(android.R.id.list);
List<String> printedList = calculateProportions();
ArrayAdapter<String> expensesAdapter = new ArrayAdapter<>(mContext,
android.R.layout.simple_list_item_1, printedList);
listView.setAdapter(expensesAdapter);
listView.setClickable(true);
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, final int position, long id) {
Intent intent = new Intent(mContext, ListPriority.class);
switch (position) {
case 0:
intent.putExtra("priority", "low");
startActivity(intent);
break;
case 1:
intent.putExtra("priority", "med");
startActivity(intent);
break;
case 2:
intent.putExtra("priority", "high");
startActivity(intent);
break;
case 3:
intent.putExtra("priority", "obsolete");
startActivity(intent);
break;
}
}
});
我没有任何错误或警告,但我的 activity 没有 start.When 我调试了应用程序,我点击了任何项目,我什至没有到达我的断点。
我的 ListView 在 XML 中:
<ListView
android:id="@android:id/list"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
/>
我的java代码在ListFragment的onCreateView中
ListFragment
处理自己的 OnItemClickListener
。不要设置侦听器,而是覆盖 onListItemClick()
在你的javaclass中,你的id声明是错误的:
变化自,
ListView listView = (ListView) rootView.findViewById(android.R.id.list);
到
ListView listView = (ListView) rootView.findViewById(R.id.list);
而你的xml id声明是错误的:
变化自,
<ListView
android:id="@android:id/list"
android:layout_width="fill_parent"
android:layout_height="fill_parent" />
到
<ListView
android:id="@+id/list"
android:layout_width="fill_parent"
android:layout_height="fill_parent" />