Hello world :
我需要你的帮助,我有onclick事件的列表视图,但我需要从点击的项目中获取项目名称。
这就是我现在所拥有的......
Product_listview.setOnItemClickListener(new AdapterView.OnItemClickListener(){
@Override
public void onItemClick(AdapterView<?> parent, View view, int position,long id) {
final int selected_row = position;
final Product user = (Product) parent.getItemAtPosition(position);
AlertDialog.Builder alert = new AlertDialog.Builder(nuevo_pedido.this);
alert.setTitle("Cantidad: ");
final NumberPicker np = new NumberPicker(nuevo_pedido.this);
String[] nums = new String[11];
for(int i=0; i<nums.length; i++)
nums[i] = Integer.toString(i);
np.setMinValue(0);
np.setMaxValue(nums.length-1);
np.setWrapSelectorWheel(false);
np.setDisplayedValues(nums);
np.setValue(0);
alert.setView(np);
alert.setPositiveButton("Aceptar", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
// Do something with value!
int valor = np.getValue();
Toast.makeText(getApplicationContext(), "Valor: " + valor + " Producto: " + user + " Usr: " + extraData, Toast.LENGTH_SHORT).show();
}
});
alert.setNegativeButton("Cancelar", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
}
});
alert.show();
}
});
当我的代码运行完全正常,但发送一些不是名字的东西。
chintan.khetiya.sqlite.cursor.Product@40ec4d88
建议??
答案 0 :(得分:3)
尝试使用lv.getItemAtPosition(position)
来获取文字。
lv.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> arg0, View v, int position,
long arg3)
{
String name = arg0.getItemAtPosition(position).toString()
}
});
看看这个http://developer.android.com/reference/android/widget/AdapterView.html#getItemAtPosition%28int%29
答案 1 :(得分:0)
从对象产品,可能无法通过getter捕获name属性: 的 product.getName()强>
或者问题是别的什么?
答案 2 :(得分:0)
Product_listview.setOnItemClickListener(new AdapterView.OnItemClickListener(){
@Override
public void onItemClick(AdapterView<?> parent, View view, int position,long id) {
我们可以从adapterView获取对象
final Product user = (Product)parent.getAdapter().getItem(position);
现在,你得到了
getter的产品名称。
它对我有用。