根据参数显示列表视图中的项目

时间:2013-05-04 10:10:12

标签: android listview parameters

我在列表视图的1行中仅显示我的数据库中的三个详细信息在用户单击此列表项后,所有详细信息都应在列表视图中的另一个活动中显示。我尝试过但是获取空白活动打开而不是列表.. 的 ListViewDetails.java

    listview.setOnItemClickListener(new OnItemClickListener() {

        public void onItemClick(AdapterView<?> listView, View view, 
                int position, long id) {
                // Get the cursor, positioned to the corresponding row in the result set
                Cursor cursor = (Cursor) listView.getItemAtPosition(position);

                // Get the state's capital from this row in the database.
                int appno=cursor.getInt(cursor.getColumnIndexOrThrow("appln_no"));


                Intent objintent=new Intent(getApplicationContext(),DisplayDetails.class);
                objintent.putExtra("countryCode", countryCode);
                startActivity(objintent);

                }
    });

这里将appno参数传递给下一个intent,以便与此appno相关的详细信息显示在 DisplayDetails.java

 public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.listdisplay);
        Intent intentobj=getIntent();
        int appno=intentobj.getIntExtra("appln_no", 0);

        WayDataBase way=new WayDataBase(getApplicationContext());

        ArrayList<String> listvalues=way.getListDetails(appno);

        if(listvalues.size()!=0)
        {
            ListView lv=getListView();
            ListAdapter adapter=new ArrayAdapter<String>(DisplayDetails.this, R.layout.view_animal_entry, R.id.animalName, listvalues);
            lv.setAdapter(adapter);

        }
 }

但屏幕只是balnk .. 问题是什么?请帮忙!谢谢!

1 个答案:

答案 0 :(得分:1)

希夫,

您已在变量“appno”中获取值,但设置了变量“countryCode”而非“appno”的值。

在您的DisplayDetails.java中,您试图从变量“appln_no”中获取它,这是不正确的。

如果我查看您的代码,那么您似乎希望将appno值传递给另一个活动 所以应该保持这样:

<强> ListViewDetails.java objintent.putExtra(“countryCode”,appno);

<强> DisplayDetails.java

int appno = intentobj.getIntExtra(“appln_no”,“countryCode”);