我有一个listView来自我的自定义ArrayAdapter.在每个视图中都有一个按钮.我想在单击按钮时更改当前片段.这是我的代码:
public class CheckInSArrayAdapter extends ArrayAdapter<JSONObject> {
@Override
public View getView(int position, View convertView, ViewGroup parent) {
return getViewOptimize(position, convertView, parent);
}
public View getViewOptimize(int position, View convertView, ViewGroup parent) {
......
viewHolder.commentBtn.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
??? <<<<<
});
return convertView;
}
private class ViewHolder {
...
public Button commentBtn;
}
}
Run Code Online (Sandbox Code Playgroud)
所以现在,我无法从OnClickListener调用getFragmentManager.我能怎么做?
102*_*rpz 25
好吧,也许我有点晚了,但也许它会帮助一些人这样做.
在调用适配器的类中,您需要扩展或实现"FragmentActivity".然后你的Activity将包含一个fragmentManager.
当您调用适配器时,请使用扩展FragmentActivity的类调用它
MyAdapterName = new MyAdapterName(MyClassName.this, Objects);
Run Code Online (Sandbox Code Playgroud)
然后在getView()的适配器中 - 执行此操作.
final Context context = parent.getContext();
FragmentManager fm = ((Activity) context).getFragmentManager();
Run Code Online (Sandbox Code Playgroud)
小心使用好的android FragementManager - android.app.FragmentManager而不是android.support.v4.app.FragmentManager;
| 归档时间: |
|
| 查看次数: |
14271 次 |
| 最近记录: |