我有一个可扩展的列表视图,在组标题中有一个按钮和一个文本视图。
我使用一个实现视图保持器的适配器。
我想在按钮上包含一个单击事件,这样我就可以获得组标题中的文本视图文本,并将字符串传递给另一个片段。
我还想展示另一个片段。
我被卡住了,因为我无法理解,
-
如何在单击按钮时从片段中的可扩展列表视图中读取textview值
和
-
如何将Title的值传递给另一个片段。
我需要使用
GViewHolder.myButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
}
或
public void onItemClick(AdapterView<?> parent, View view,int position, long id) {
});
请注意,当单击按钮时,我看不到公共的void onItemClick!
我实现了如下适配器:
部分代码为
public class ListViewAdapter extends BaseExpandableListAdapter {
class GViewHolder {
public TextView Title;
public Button myButton;
}
GViewHolder.myButton.setFocusable(false);
GViewHolder.myButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
// How to implement this in the fragment ???
}
});
}
实现适配器的片段的一部分如下:
private ListView eList = null;
InterFragmentNavigator interFragmentNavigator;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_event_list, container, false);
eList = (ListViewAdapter) view.findViewById(R.id.eView);
ListViewAdapter listDataAdapter = new ListViewAdapter(getActivity(), groupes);
eList.setAdapter(listDataAdapter);
eList.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view,int position, long id) {
// Here, I want to read the textview value of Title next to button
TextView textViewItem = ((TextView) view.findViewById(R.id.Title));
String Title = textViewItem.getText().toString();
**//Here, I want to call another fragment and pass Title as parameter.**
return view;
}