Android 获得;";ListView setOnItemClickListener视图中的dialogFragment
这里有一个!你有一个Android 获得;";ListView setOnItemClickListener视图中的dialogFragment,android,listview,android-dialogfragment,Android,Listview,Android Dialogfragment,这里有一个!你有一个 public class SomePopup extends DialogFragment implements View.OnClickListener 它在自身内部创建一个ListView public ListView happyListView; public HappyAdapter ourAdaptor; 然后在这里面 public View onCreateView(LayoutInflater inflater, ViewGroup contai
public class SomePopup extends DialogFragment implements View.OnClickListener
它在自身内部创建一个ListView
public ListView happyListView;
public HappyAdapter ourAdaptor;
然后在这里面
public View onCreateView(LayoutInflater inflater,
ViewGroup container,
Bundle savedInstanceState)
。。像往常一样,你设置了列表。在这种情况下,用户可以单击“任意行”,并对其执行此操作…这也在onCreateView中
happyListView.setOnItemClickListener(new AdapterView.OnItemClickListener()
{
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id)
{
ParseUser chosen = (ParseUser) happyListView.getItemAtPosition(position);
Utils.Log("YOU CLICKED ON .......... " + .. chosen);
// actually close this entire DialogFragment
SOMETHING.dismiss();
}
});
happyListView.setOnItemClickListener(新的AdapterView.OnItemClickListener()
{
@凌驾
public void onItemClick(AdapterView父对象、视图、整型位置、长id)
{
ParseUser Selected=(ParseUser)happyListView.getItemAtPosition(position);
Utils.Log(“您单击了………”+…选择);
//实际上关闭整个对话框片段
某物;
}
});
注意下面的内容。你怎么做到的
我通过调用创建DialogFragment的类并使用该实例解决了这个问题
但是,当您在happyListView.setOnItemClickListener中时,如何获得“此”对话框片段
干杯你可以给班级打电话,把
this
(作为你的SomePopup
)放在班级名称SomePopup.this
后面。。只有当对话框片段中有happyListView.setOnItemClickListener
时,它才会起作用。。因为它是一个匿名类
示例:
happyListView.setOnItemClickListener(new AdapterView.OnItemClickListener()
{
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id)
{
ParseUser chosen = (ParseUser) happyListView.getItemAtPosition(position);
Utils.Log("YOU CLICKED ON .......... " + .. chosen);
// actually close this entire DialogFragment
SomePopup.this.dismiss();
}
});
happyListView.setOnItemClickListener(新的AdapterView.OnItemClickListener()
{
@凌驾
public void onItemClick(AdapterView父对象、视图、整型位置、长id)
{
ParseUser Selected=(ParseUser)happyListView.getItemAtPosition(position);
Utils.Log(“您单击了………”+…选择);
//实际上关闭整个对话框片段
SomePopup.this.discouse();
}
});
您可以调用该类并将this
(作为对SomePopup
的引用)放在类名SomePopup.this
之后。。只有当对话框片段中有happyListView.setOnItemClickListener
时,它才会起作用。。因为它是一个匿名类
示例:
happyListView.setOnItemClickListener(new AdapterView.OnItemClickListener()
{
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id)
{
ParseUser chosen = (ParseUser) happyListView.getItemAtPosition(position);
Utils.Log("YOU CLICKED ON .......... " + .. chosen);
// actually close this entire DialogFragment
SomePopup.this.dismiss();
}
});
happyListView.setOnItemClickListener(新的AdapterView.OnItemClickListener()
{
@凌驾
public void onItemClick(AdapterView父对象、视图、整型位置、长id)
{
ParseUser Selected=(ParseUser)happyListView.getItemAtPosition(position);
Utils.Log(“您单击了………”+…选择);
//实际上关闭整个对话框片段
SomePopup.this.discouse();
}
});
您可以调用该类并将this
(作为对SomePopup
的引用)放在类名SomePopup.this
之后。。只有当对话框片段中有happyListView.setOnItemClickListener
时,它才会起作用。。因为它是一个匿名类
示例:
happyListView.setOnItemClickListener(new AdapterView.OnItemClickListener()
{
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id)
{
ParseUser chosen = (ParseUser) happyListView.getItemAtPosition(position);
Utils.Log("YOU CLICKED ON .......... " + .. chosen);
// actually close this entire DialogFragment
SomePopup.this.dismiss();
}
});
happyListView.setOnItemClickListener(新的AdapterView.OnItemClickListener()
{
@凌驾
public void onItemClick(AdapterView父对象、视图、整型位置、长id)
{
ParseUser Selected=(ParseUser)happyListView.getItemAtPosition(position);
Utils.Log(“您单击了………”+…选择);
//实际上关闭整个对话框片段
SomePopup.this.discouse();
}
});
您可以调用该类并将this
(作为对SomePopup
的引用)放在类名SomePopup.this
之后。。只有当对话框片段中有happyListView.setOnItemClickListener
时,它才会起作用。。因为它是一个匿名类
示例:
happyListView.setOnItemClickListener(new AdapterView.OnItemClickListener()
{
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id)
{
ParseUser chosen = (ParseUser) happyListView.getItemAtPosition(position);
Utils.Log("YOU CLICKED ON .......... " + .. chosen);
// actually close this entire DialogFragment
SomePopup.this.dismiss();
}
});
happyListView.setOnItemClickListener(新的AdapterView.OnItemClickListener()
{
@凌驾
public void onItemClick(AdapterView父对象、视图、整型位置、长id)
{
ParseUser Selected=(ParseUser)happyListView.getItemAtPosition(position);
Utils.Log(“您单击了………”+…选择);
//实际上关闭整个对话框片段
SomePopup.this.discouse();
}
});
太棒了,非常感谢。作为一名objc程序员,我永远不会想到这一点当你说这是一个匿名类,你指的是什么,罗德?您是指“new AdapterView.OnItemClickListener()”还是其他什么?再次感谢是的,OnItemClickListener是匿名类,如果您只调用“this”,它将不起作用,因为它将具有OnItemClickListener引用Gotchya。令人惊讶的是,你可以说“classname”,然后说“dot this”,它理解你指的是我们上面的那个classname的实例。奇怪又可怕,我爱java!:)在objc中,您必须通过带有异常内存管理条件的“this”等等。在时间限制允许后,我会点击一个悬赏,再次感谢你,伙计,真的太棒了,非常感谢你。作为一名objc程序员,我永远不会想到这一点当你说这是一个匿名类,你指的是什么,罗德?您是指“new AdapterView.OnItemClickListener()”还是其他什么?再次感谢是的,OnItemClickListener是匿名类,如果您只调用“this”,它将不起作用,因为它将具有OnItemClickListener引用Gotchya。令人惊讶的是,你可以说“classname”,然后说“dot this”,它理解你指的是我们上面的那个classname的实例。奇怪又可怕,我爱java!:)在objc中,您必须通过带有异常内存管理条件的“this”等等。在时间限制允许后,我会点击一个悬赏,再次感谢你,伙计,真的太棒了,非常感谢你。作为一名objc程序员,我永远不会想到这一点当你说这是一个匿名类,你指的是什么,罗德?您是指“new AdapterView.OnItemClickListener()”还是其他什么?再次感谢是的,OnItemClickListener是匿名类,如果您只调用“this”,它将不起作用,因为它将具有OnItemClickListener引用Gotchya。你能说“classname”然后说“dot this”真是太神奇了